0

如何合并KeyReleaseEventQPushButton使用signal. 我的意思是每当用户按下回车键按钮时,都应该使用 SLOT 调用某些函数。那么我必须在信号中使用什么?

void mywindow::keyReleaseEvent(QKeyEvent *event)
{
    switch(event->key())
    {
        case Qt::Key_Enter:
            connect(button1, SIGNAL(clicked()), this, SLOT(fileNew()));
            connect(button2, SIGNAL(clicked()), this, SLOT(file()));
        break;  
    }
}
4

2 回答 2

0

有处理这种情况的快捷方式属性。
我建议使用带有快捷值的QAction 。失去了奖励功能。

于 2014-01-14T15:26:17.787 回答
0

如果我正确理解您的问题,您想在按下回车键时单击某个按钮。您可以只调用该 QAbstractButton::click()函数来执行单击。

connect(button1,SIGNAL(clicked()),this,SLOT(fileNew()));
connect(button2,SIGNAL(clicked()),this,SLOT(file())); //do this in your constructor, or somewhere else.. just make sure you only do this once

 

void mywindow::keyReleaseEvent(QKeyEvent *event)
{
    switch(event->key())
    {
        case Qt::Key_Enter:
            button1->click();    
        break;    
    }
}
于 2014-01-14T12:06:35.807 回答