最近写QT对话框程序,发现一个奇怪的现象,明明是两个相同的对话框,点击了确认按钮,一个正常退出,一个怎么都不退出!
我很奇怪,为什么accepted()之后不退出!
代码如下:
经过对比,我发现原来我犯了个愚蠢的错误!我把 accept()函数写成了accepted(),实际上accepted()是个信号!
来自qt助手里的解释:
(1) QDialog::Accepted : 模态对话框的返回值;
(2) [virtual slot] void QDialog::accept() : 隐藏模态对话框并将结果代码设为Accepted;
(3) [signal] void QDialog::accepted() : 当用户接受对话框或通过使用 QDialog::Accepted 参数调用 accept() 函数或者 done() 函数时,会发送此信号.
修改之后,问题解决!
原谅我!犯了这个低级错误!
谨此分享给有类似经历的小伙伴,免得以为遇到奇怪的问题!