在Qt Designer中可以預先定義標准按鈕,相關支持的標准按鈕請見《PyQt(Python+Qt)學習隨筆:Designer中的QDialogButtonBox的StandardButtons標准按鈕》。
這些標准按鈕的顯示文字Qt已經缺省內置了,如果要改變這些文字,可以通過按鈕的setText方法,但在改變前需要通過button方法找到需要修改的按鈕。
案例
在Qt Designer中定義了一個名為buttonBox的QDialogButtonBox,在其下選擇定義了所有標准按鈕,如圖:
該界面生成代碼的模塊為mainWinTest,對應的界面類為mainWinTest,從界面類派生類為Ui_mainWindowWin,要將其下的Cancel按鈕的文字改為“取消”,可以在其構造方法中進行處理。其類定義及構造方法如下:
class Ui_mainWindowWin(QtWidgets.QMainWindow,mainWinTest.Ui_MainWindow):
def __init__(self):
super(Ui_mainWindowWin, self).__init__()
self.setupUi(self)
self.toolButton.setDefaultAction(self.actionAbout)
self.toolButton.setMenu(self.menusystem)
button = self.buttonBox.button(QDialogButtonBox.Cancel)
button.setText("取消")
以上代碼最后兩行就是在buttonBox中將“Cancel按鈕”改成了“取消按鈕”。運行后界面如圖: