• 3711阅读
  • 0回复

问个关于QProcess的问题 [复制链接]

上一主题 下一主题
离线tangxunmin
 

只看楼主 倒序阅读 楼主  发表于: 2012-04-06
我想点击lineedit的时候把软键盘气起来,lineedit失去焦点的时候,关闭软键盘或者影藏
代码如下:
//失去焦点的函数

void mywidget::OnEditFinished()
{
    if (!process)
    {
        return;
    }
    else
    {
        process->close();
    }


}
//lineedit获取焦点的时候响应函数
void mywidget::OnSlectionChanged()
{
    if (!process)
    {
        process = new QProcess;
        //connect(process,SIGNAL(readyRead()), this, SLOT(readOutput()));
        process->start(tr("osk"));
    }
    else
    {
        process->start(tr("osk"));
    }
}


这样点击屏幕键盘  居然不能输入,奇怪的是 之前能输入的, 重启之后就不能输入了
而且我发现 每次start后会有两个进程osk.exe和msswchx.exe,如果用process的colse的话,只能关闭osk.exe进程。
后来该用terminate()这样倒是两个进程都退出了,但是也是不能从屏幕键盘输入(点上面的健没反应),


没有对这个比较熟悉的啊  ,帮忙看看哈

快速回复
限100 字节
 
上一个 下一个