QT中调用外部程序_QProcess的使用.doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:9 大小:115KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

QT中调用外部程序_QProcess的使用.doc

QT中调用外部程序_QProcess的使用.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

QT中调用外部程序:QProcess的使用本文通过QProcess,实现了在Qt中调用外部程序(控制台程序),并将输出重定向到了一个QTextEdit里。效果如下图所示:运行界面如下:程序共包含以下有一个文件:viewplaincopytoclipboardprint?//:main.cpp#include"process.h"#include<QApplication>#include<QTextCodec>intmain(intargc,char*argv[]){QApplicationa(argc,argv);QTextCodec::setCodecForTr(QTextCodec::codecForLocale());QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());Processw;w.show();returna.exec();}//:main.cpp#include"process.h"#include<QApplication>#include<QTextCodec>intmain(intargc,char*argv[]){QApplicationa(argc,argv);QTextCodec::setCodecForTr(QTextCodec::codecForLocale());QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());Processw;w.show();returna.exec();}viewplaincopytoclipboardprint?//:process.h#ifndefPROCESS_H#definePROCESS_H#include<QWidget>classQLabel;classQLineEdit;classQProcess;classQPushButton;classQTextEdit;classProcess:publicQWidget{Q_OBJECTpublic:Process(QWidget*parent=0,Qt::WFlagsflags=0);~Process();privateslots:voidrunClicked();voidreadOutput();private:QProcess*cmd;QStringoutput;QLabel*inputLabel;QLineEdit*inputEdit;QPushButton*runButton;QLabel*outputLabel;QTextEdit*outputEdit;};#endif//PROCESS_H//:process.h#ifndefPROCESS_H#definePROCESS_H#include<QWidget>classQLabel;classQLineEdit;classQProcess;classQPushButton;classQTextEdit;classProcess:publicQWidget{Q_OBJECTpublic:Process(QWidget*parent=0,Qt::WFlagsflags=0);~Process();privateslots:voidrunClicked();voidreadOutput();private:QProcess*cmd;QStringoutput;QLabel*inputLabel;QLineEdit*inputEdit;QPushButton*runButton;QLabel*outputLabel;QTextEdit*outputEdit;};#endif//PROCESS_Hviewplaincopytoclipboardprint?//:process.cpp#include<QtGui>#include"process.h"Process::Process(QWidget*parent,Qt::WFlagsflags):QWidget(parent,flags){inputLabel=newQLabel(tr("请输入命令:"));inputEdit=newQLineEdit;runButton=newQPushButton(tr("运行"));outputLabel=newQLabel(tr("运行结果如下:"));outputEdit=newQTextEdit;out