我正在使用Qt設計器4.8.7開始。我創建了一個MainWindow
,我想載入一個佈局。由Qt設計師創建的QWidget未被識別爲QWidget
我有一個小工具,由Qt designer的pyuic4
生成。
我打開我的窗口小部件做
self.setCentralWidget(myWidget)
它拋出這個錯誤:
AttributeError: 'Ui_myWidget' object has no attribute 'setObjectName'
它清楚地解釋傳遞的對象不被識別爲一個QWidget。這個問題是可以解決的,從修改類定義:
class Ui_myWidget(object):
到
class Ui_myWidget(QtGui.QWidget):
由於部件將被更新,每次.py
將再次生成,我將不得不手動編輯。我想避免這種情況。我錯過了一步嗎?
如果可能,您不應該編輯由'pyuic4'生成的.py文件。相反,您可以在它們旁邊創建一個新的.py文件,並導入這些文件以調用小部件:'from pyfilename import Ui_myWidget' – Saelyth
這是用於測試目的。 @eyllanesc提供的答案也解釋了它。謝謝! –