首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

回车键按下有关问题

2013-06-19 
回车键按下问题现在有个对话框里面有个lineedit 和buttonbox我重写了accept和reject方法我添加了lineedit

回车键按下问题
现在有个对话框里面有个lineedit 和buttonbox
我重写了accept和reject方法
我添加了lineedit的回车事件响应,可于此同时accept函数也被调用,如何不让accept函数也响应?

我试着在里面加了事件过滤器好像也没有效果
  ui->buttonBox->installEventFilter(this);

在对话框的eventfilter函数里
    if (target == ui->buttonBox)
    {
        if(e->type() == QEvent::KeyPress)
        {
            QKeyEvent *keyEvent = static_cast<QKeyEvent*>(e);
            if (keyEvent->key() == Qt::Key_Enter)
            {
                qDebug("enter event filterd!");
                return true;
            }
        }
    }
    return QDialog::eventFilter(target, e);
感觉这个应该是可行的,类似VC里的pretranslatemessage,请qt达人指点
[解决办法]


//if (keyEvent->key() == Qt::Key_Enter)这句改为
if (keyEvent->key() == Qt::Key_Enter 
[解决办法]
 keyEvent->key() == Qt::Key_Return)

[解决办法]
建议不用buttonbox,换成两个QPushButton,问题就解决了。

热点排行