• 8425阅读
  • 2回复

[提问]qt3  QProcess 到底怎么使用,愁死了! [复制链接]

上一主题 下一主题
离线bbb324
 

只看楼主 倒序阅读 楼主  发表于: 2011-01-20
我用qt3.1.1 定义了个qprocess 可用时候出错
#include "process.h"
#include<qwidget.h>
#include<qprocess.h>
#include<qpushbutton.h>
#include<qstringlist.h>
Process::Process(QWidget *parent):
         QWidget(parent),isPlay(false)
{
    p=new QProcess(this);
    p->setProcessChannelMode(QProcess::MergedChannels);
    args<<"-slave"<<"/root/media/f.avi";
    button =new QPushButton ("Click", this);
    connect(button, SIGNAL( clicked() ), this, SLOT( change()));
    p->start("/usr/local/mplayer/bin/mplayer",args);
}
Process::~Process(){}
void Process::change()
{
    p->write("pause\n");
    isPlay= false;
}
如下错误
process.cpp: In constructor `Process::Process(QWidget*)':
process.cpp:10: `MergedChannels' is not a member of type `QProcess'
process.cpp:14: no matching function for call to `QProcess::start(const
   char[31], QStringList&)'
/usr/lib/qt-3.1/include/qprocess.h:77: candidates are: virtual bool
   QProcess::start(QStringList* = 0)
process.cpp: In member function `void Process::change()':
process.cpp:19: no matching function for call to `QProcess::write(const char[7]
   )'
make: *** [.obj/process.o] Error 1

我想请教一下qt3 下面 QProcess 怎么用啊 write 怎么就错了?
离线xinqingfly

只看该作者 1楼 发表于: 2011-01-20
看看QProcess帮助,QProcess没有setProcessChannelMode函数,p->write("pause\n");
的wite函数也没有 应该用p->writeToStdin("pause\n");吧
菜鸟也是鸟
离线jdwx

只看该作者 2楼 发表于: 2011-01-20
好好看看帮助吧!
你的QProcess是QT4的用法。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
快速回复
限100 字节
 
上一个 下一个