我需要Qt Dialog和ok并取消具有标准功能的按钮,放置在其布局的右侧。我需要继承它并在其布局中添加其他小部件。我可以自己实现它,但也许有标准的东西,在这种情况下我更喜欢使用它,因为它会更便携。
QMessageBox显示一条消息,我需要更通用的东西,只需要QDialog和标准按钮,或者QDialog可以选择激活它们。
答案 0 :(得分:6)
子类QDialog
并使用QDialogButtonBox
作为标准按钮(docs)。
答案 1 :(得分:1)
对于它的价值,您不需要继承Dialog的子类,那简直就是太多的工作,
阅读文档: https://doc.qt.io/qt-5/qmessagebox.html
假设您有
Header: #include <QMessageBox>
qmake: QT += widgets
然后做:
QMessageBox msgBox;
msgBox.setText("The document has been modified.");
msgBox.setInformativeText("Do you want to save your changes?");
msgBox.setStandardButtons(QMessageBox::Save | QMessageBox::Discard | QMessageBox::Cancel);
msgBox.setDefaultButton(QMessageBox::Save);
int ret = msgBox.exec();
答案 2 :(得分:0)
如果您使用 QT Designer,请访问 learnpyqt.com has this nice tutorial,其中描述了如何构建具有多个输入字段的 QDialog。 QT Designer 可以按照 here on stackoverflow in a comment 所述下载。