QMessageBox::question设置了QMessageBox::Close如何让close按钮不显示
时间: 2024-06-15 18:07:21 浏览: 259
Qt个人学习笔记整理
5星 · 资源好评率100%
要让QMessageBox的Close按钮不显示,可以通过设置QMessageBox的按钮属性来实现。具体步骤如下:
1. 创建一个QMessageBox对象,并设置其消息文本和图标。
2. 使用setStandardButtons()方法设置消息框的标准按钮。
3. 使用button()方法获取消息框的按钮。
4. 使用setButton()方法将Close按钮设置为不可见。
下面是示例代码:
```cpp
QMessageBox msgBox;
msgBox.setText("Are you sure you want to close?");
msgBox.setIcon(QMessageBox::Question);
// 设置标准按钮,包括Close按钮
msgBox.setStandardButtons(QMessageBox::Yes | QMessageBox::No | QMessageBox::Close);
// 获取Close按钮
QAbstractButton* closeButton = msgBox.button(QMessageBox::Close);
// 设置Close按钮不可见
closeButton->setVisible(false);
// 显示消息框
msgBox.exec();
```
这样,通过将Close按钮设置为不可见,就可以实现在QMessageBox中隐藏Close按钮。
阅读全文