【发布时间】:2015-09-26 06:04:07
【问题描述】:
我添加了一个带有默认 Cancel 和 OK 按钮的QDialogButtonBox 按钮。
有没有办法更改这些按钮的标题?例如,OK 应该变成 Run。
【问题讨论】:
-
股票按钮有翻译的标题和固定的含义。你永远不应该改变他们的标题。相反,向按钮框添加一个自定义(非标准)按钮。
标签: qt pyqt qt-designer
我添加了一个带有默认 Cancel 和 OK 按钮的QDialogButtonBox 按钮。
有没有办法更改这些按钮的标题?例如,OK 应该变成 Run。
【问题讨论】:
标签: qt pyqt qt-designer
您必须在 cpp 文件中进行一些小编码:
ui->buttonBox->button(QDialogButtonBox::Ok)->setText("Run");
ui->buttonBox->button(QDialogButtonBox::Cancel)->setText("Exit");
请注意,您可能还需要包含 QPushButton 标头:
#include <QPushButton>
没有注意到 pyqt 标签。我不熟悉 Python(尤其是 PyQt),但我认为这应该可以完成这项工作:
self.ui.buttonBox.button(QDialogButtonBox.Ok).setText("Run")
self.ui.buttonBox.button(QDialogButtonBox.Cancel).setText("Cancel")
此外,正如 Kuba Ober 所指出的,更改标准按钮的文本并不是最好的方法。最正确的方法是添加具有适当角色的自定义按钮。
self.ui.buttonBox.addButton("Run", QDialogButtonBox.ActionRole)
【讨论】:
.py中添加代码
setText 方法在 PyQt5 中工作得很好——你的代码肯定有其他问题。