簡體   English   中英

pyside,Qt Designer,封裝的代碼和AttributeError:“ MainWindow”對象沒有屬性“ QtGui”

[英]pyside, Qt Designer, encapsulated code, and AttributeError: 'MainWindow' object has no attribute 'QtGui'

我使用Qt Designer創建.ui文件,然后使用pyside-uic轉換為.py文件(具有類Ui_MainWindow )。 我注意不要編輯.ui或.py的警告,因為在Qt Designer中保存更新時,那里的所有更改都將被覆蓋。 所以我有自己的單獨代碼,應該使用python的super功能從其繼承。

class MainWindow(QMainWindow, Ui_MainWindow):
  def __init__(self):
    super(MainWindow, self).__init__()
    self.setupUi(self)
    self.assignWidgets()
    self.show()

我可以更新標簽並響應按鈕等,但是我無法使用本地化翻譯內容。 上面的類的一部分是此函數:

def connecetSerialPushed(self):
  self.label_connected.setText(self.QtGui.QApplication.translate(self, "Connected: Yes", None, self.QtGui.QApplication.UnicodeUTF8))

如果我只是執行一個純setText"Connected: Yes"字符串,則不會出現任何錯誤。 但是執行該轉換會導致錯誤:AttributeError:'MainWindow'對象沒有屬性'QtGui'。 我不明白。.我以為我繼承了Ui_MainWindow所有內容,包括QtGui的導入。 我想念什么?

在單獨的代碼中,我確實

from PySide import QtGui

然后將翻譯行更改為

self.label_connected.setText(QtGui.QApplication.translate("MainWindow", "Connected: Yes", None, QtGui.QApplication.UnicodeUTF8))

謝謝消除我的困惑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM