Python: PySide(PyQt)QMessageBox按鈕顯示中文
阿新 • • 發佈:2018-09-06
封裝 對話框 直接 side == tex urn 本地化 quest
習慣了Delphi、c#調用系統MessageBox本地化顯示,待用PySide調用時,Qt原生提示對話框,默認以英文顯示。
如何本地化呢?
參考些資料,加以摸索,實現所需效果。並可根據此思路,設計自己所需要的MessageBox封裝。
QTextCodec.setCodecForTr(QTextCodec.codecForName("UTF-8")) box = QMessageBox(QMessageBox.Question, self.tr("提示"), self.tr("您確定要退出嗎?"), QMessageBox.NoButton, self) yr_btn= box.addButton(self.tr("是"), QMessageBox.YesRole) box.addButton(self.tr("否"), QMessageBox.NoRole) box.exec_() if box.clickedButton() == yr_btn: print ‘Bye bye...‘ return else: print ‘繼續...‘
直接以.exec_()判斷,[是]按鈕返回0,尚不知如何與QMesageBox.YesRole對應,繼續尋求方法。
Python: PySide(PyQt)QMessageBox按鈕顯示中文