如何從QMessageBox輕鬆翻譯標準按鈕(是,否)?我不能在這些參數上使用self.tr,所以我想以其他一些簡單的方式實現它。我必須使用整個翻譯系統嗎?PyQt:翻譯標準按鈕
3
A
回答
9
這裏是我做的事:
首先,你需要將qt_LOCALE.qm
文件複製到你的應用程序目錄。我的是:
cp /usr/share/qt4/translations/qt_fr.qm .
其次,你需要爲你的應用程序加載一個翻譯器。
application = QApplication(argv)
locale = QLocale.system().name()
qtTranslator = QTranslator()
if qtTranslator.load("qt_"+locale):
application.installTranslator(qtTranslator)
main_window = QMainWindow()
main_window.show()
exit(application.exec_())
3
你確定你有他們自己翻譯?在其他工具包中,標準按鈕會自動轉換爲用戶正在使用的語言。
2
最快的方法是這樣的:
mymessagebox.button(mymessagebox.Yes).setText("Yes, please!")
mymessagebox.button(mymessagebox.No).setText("No, thanks.")
見QMessageBox提示文檔所有可能standard buttons。
0
如果您想要將Yes/No翻譯成當前語言,通常設置系統語言應該足夠了。否則請嘗試使用Natim的建議。
如果你想自定義文本:靜態方法,如問題()等不允許的自定義按鈕文本。這是不幸的,因爲「是」/「否」對話被認爲是不好的風格(它們不是描述性的,必須閱讀整個信息,而且容易誤解是什麼意思,是什麼意思,否則意外否定它們)。對於自定義文本,您必須直接使用QMessageBox。我建議編寫自己的靜態方法來接受可選的按鈕文本。
相關問題
- 1. 使用警報按鈕的標準Apple翻譯?
- 2. 翻譯Fancybox按鈕
- 3. 翻譯上傳按鈕標題
- 4. Jquery多次翻譯按鈕
- 5. 翻譯按鈕離子2
- 6. Pyqt英語譯成芬蘭語翻譯
- 7. 如何禁用pyqt中的特定標準按鈕
- 8. 翻譯HQL子查詢標準
- 9. 在標準中翻譯SQL函數
- 10. 微軟翻譯部件不翻譯按鈕
- 11. Pyqt:從按鈕更改圖標
- 12. 按鈕沒有響應翻譯動畫
- 13. 如何翻譯i18next的按鈕值?
- 14. JFace對話框按鈕翻譯
- 15. IOS鍵盤默認按鈕翻譯
- 16. 翻譯「進行結帳」按鈕woocommerce
- 17. 使用翻譯提交按鈕
- 18. android像素翻譯,按鈕消失
- 19. 翻譯按鈕JQuery的數據表內
- 20. 谷歌翻譯定製按鈕
- 21. 在Google翻譯按鈕上製作Google徽標灰度圖
- 22. 非標準後退按鈕
- 23. 標籤翻譯
- 24. PyQt:按鈕懸停說明
- 25. PyQt的按鈕連接環
- 26. 在PyQt中切換按鈕
- 27. Three.JS翻譯目標
- 28. Magento翻譯標籤
- 29. 翻譯Meta標記
- 30. OpenGL翻譯 - 座標
不,我寧願讓它們自動翻譯。但我不知道如何做到這一點。 – gruszczy 2009-11-12 15:11:54
你在使用什麼操作系統?您是否嘗試過使用其他語言登錄? – 2009-11-12 16:21:36
Ubuntu 9.10我有一切在波蘭。 – gruszczy 2009-11-13 12:13:18