QDialogButtonBox 小部件自动重新排序它的按钮以满足不同平台上用户的期望。我想遵循这种行为,但使用我自己的按钮标签(例如“导入”而不是“确定”)。我怎样才能做到这一点?是否可以使用 QMessageBox,或者我需要编写自己的实现吗?我正在使用 PyQt4 和 Qt Designer 编写我的应用程序。
请参阅下面的 Aqua 和 Cleanlooks 样式的 OS X 上 QDialogButtonBox 的屏幕截图。
最佳答案
QDialogButtonBox
可以为您完成此操作,但您需要创建一个对话框以首先放入一个对话框(工作量很小)。
...
auto buttons = new QDialogButtonBox( this );
buttons->addButton( "Import", QDialogButtonBox::AcceptRole );
buttons->addButton( "Cancel", QDialogButtonBox::RejectRole );
...
文档是 here (是C++的,不过我肯定能跟得上),大意是ButtonRole
被当前样式布局用来重新排列按钮。
关于python - 不同平台上按钮的顺序(QDialogButtonBox),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15598313/