练习92

xiaoxiao2021-02-28  97

#include <QProcess>   #include <QPushButton>   #include <QMessageBox>   #include <QTextCodec>     #include "mainwindow.h"     MainWindow::MainWindow(QWidget *parent)       : QMainWindow(parent)   {       p = new QProcess(this);       QPushButton *bt = new QPushButton("display"this);       connect(bt, SIGNAL(clicked()), this, SLOT(openProcess()));   }     MainWindow::~MainWindow()   {     }     void MainWindow::openProcess()   {   #if defined(Q_OS_WIN32)       p->start("cmd.exe", QStringList() << "/c" << "dir");   #elif defined(Q_OS_LINUX)       p->start("ls", QStringList() << "/home/usr_name");   #endif       connect(p, SIGNAL(finished(int)), this, SLOT(readResult(int)));   }     void MainWindow::readResult(int exitCode)   {       if(exitCode == 0) {   #if defined(Q_OS_WIN32)           QTextCodec* gbkCodec = QTextCodec::codecForName("GBK");           QString result = gbkCodec->toUnicode(p->readAll());   #elif defined(Q_OS_LINUX)           QTextCodec* utfCodec = QTextCodec::codecForName("UTF-8");           QString result = utfCodec->toUnicode(p->readAll());   #endif           QMessageBox::information(this"dir", result);       }   }  
转载请注明原文地址: https://www.6miu.com/read-81817.html

最新回复(0)