聚焦QlineEdit时触发键盘事件?

时间:2014-04-02 07:33:22

标签: qt keyboard-events onfocus qlineedit

在专注于特定的QlineEdit之后,有没有办法解雇外部键盘事件 实际上,我正在开发一个qt中的多语言应用程序,我想要关闭谷歌工具&基于它所关注的行编辑。

的问候,
罗希特夏尔

2 个答案:

答案 0 :(得分:0)

覆盖focusInEvent并发出您选择的信号

void my_lineedit::focusInEvent(QFocusEvent* event)
{
    emit my_signal();
    QLineEdit::focusInEvent(event);
}

答案 1 :(得分:0)

我可以检查线条编辑是否处于焦点但是我无法触发“Ctrl + G'聚焦后的事件。 以下是我的代码段

bool DemoDialog::eventFilter(QObject *target, QEvent *event)
{
    if (target == ui->leAge)
    {
    if (event->type() == QEvent::FocusIn)
    {
        qDebug()<<"Inside Event";
        QKeyEvent *evnent=new QKeyEvent(QEvent::KeyPress,Qt::CTRL+Qt::Key_G,Qt::NoModifier,QString(""));
        QApplication::sendEvent(this,evnent);
    }
}
return QObject::eventFilter(target, event);
}