1.以warning窗口为例,实现的代码有两种。
(1)对于完全使用Qt提供的对话框。
QMessageBox::StandardButton result = QMessageBox::warning(&widget,“Title”,“text”);
此时弹出warning窗口,且result接收到返回值。
(2)对于完全使用Qt提供的按钮。
QMessageBox MBox;//定义并构造MBox
result = MBox.exec();//exec是QMessageBox的函数,作用是将对话框弹出,返回值是用户点击按钮的枚举类型
2.对于自定义对话框,只能使用(2)中的方式实现。若是还使用了自定义的按钮,就不可以直接从exec()接收按钮的枚举类型。
增加自定义按钮的QMessageBox成员函数为addButton。
则此时定义一个QPushButton类指针来定义增加的自定义按钮:
QPushButton *agreeBut = MBox.addButton(“Text”,QMessageBox::AcceptRole);
使用方式是借助QMessageBox成员函数clickedButton:
MBox.exec();//显示对话框
if(MBox.clickedButton() == (QAbstractButton)agreeBut ){
…
}
三种接收QMessageBox按钮返回值的方式
最新推荐文章于 2025-03-20 09:23:13 发布