首页| 论坛| 消息

标题:QTE输入法在模式对话框中如何使用?
作者:boymaster
日期:2012-03-22 15:23
内容:

在QTE上写了一个软键盘的输入法,应用程序中QDialog窗体以exec方式打开后,焦点无法切换到输入法
输入法 windowFlags fl = Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint | Qt::Tool

const QApplication::Type type = a.type();
if (QApplication::GuiServer == type) {
IMFrame::installInputMethod();
}
Base base;
base.show();// 以非模态方式打开窗口,输入法可以正常使用
//base.exec(); // 以模态方式打开窗口,输入法无法使用,控件无法得到焦点
//
int ret = a.exec();
if (QApplication::GuiServer == type) {
IMFrame::releaseInputMethod();
}
return ret;


#1 [boymaster 03-22 15:28]
现在只能使用非模态方式打开界面
还特地重写了一个函数:
void QMyDialog::openModal()
{
this->open();
QEventLoop eventLoop;
connect(this, SIGNAL(finished(int)),&eventLoop, SLOT(quit()));
eventLoop.exec();
return this->result();
}
#2 [boymaster 03-22 17:53]
自己顶一下

回复 发表
主题 版块