虽然对话没有集中,但是信号发生了火灾
问题描述:
我有一个LineEdit元素的对话框。我想对话框关闭,如果按下ENTER键,所以我增加了一个插槽的returnPressed()信号:虽然对话没有集中,但是信号发生了火灾
ChPasswd::ChPasswd(QWidget *parent) :
QDialog(parent),
ui(new Ui::ChPasswd)
{
ui->setupUi(this);
connect(ui->NewPasswordInput, SIGNAL(returnPressed()), SLOT(checkPasswords()));
}
在某些时候,我打开一个消息框:
QMessageBox mb(...);
mb.exec();
箱子打开,得到焦点。问题是,当我现在按ENTER时,ChPasswd
火灾中的returnPressed信号和checkPasswords()
被调用。为什么处理这个键盘事件?
答
好吧,我只是想通了。由于这是一个对话框,按下ENTER键会自动调用另一个插槽此槽还呼叫checkPasswords()
,因此创建了第二个消息框,在第一个消息框关闭后立即出现。
什么是消息框'父? – 2011-04-27 15:57:12
我没有设置父母 – slosd 2011-04-27 16:05:44
尝试设置父母! – Naszta 2011-04-27 16:33:14