2017-02-24 74 views
0

我即将重构一个小GUI的凌乱代码,并尝试将几个元素合并成一个从QWidget继承的新类。不幸的是,这个小部件没有被绘制,但也不会产生错误。PyQt写继承QWidget

A制备该问题的一个最小的例子:

from PyQt5.QtWidgets import QWidget, QVBoxLayout, QLabel 


class ExportOptions(QWidget): 
    def __int__(self, parent=None): 
     QWidget.__init__(self, parent) 
     self.mainLayout = QVBoxLayout(self) 
     #self.setFixedSize(100,100) 
     self.mainLayout.addWidget(QLabel("Test")) 
     self.setLayout(self.mainLayout) 
     self.show() 

if __name__ == '__main__': 
    from PyQt5.QtWidgets import QMainWindow, QApplication 
    import sys 
    app = QApplication(sys.argv) 
    mainWindow = QMainWindow() 
    mainWindow.setCentralWidget(ExportOptions()) 
    mainWindow.show() 
    sys.exit(app.exec_()) 

运行文件生成空窗口而不标签。 我想我失去了一些东西很琐碎,但

我在Windows机器上使用最新的Anaconda2 i.e.Python 2.7pyQt 5.8我看不出它......。 感谢您的帮助!

回答

0

你有一个错字:def __int__应该是。

无关:您不需要在您的ExportOptions小部件中调用self.show(),它会在显示其父窗口时自动显示。

+0

我知道这是愚蠢的...非常感谢。在代码上寻找几个小时,这一点在某种程度上令人尴尬:-( – littleHue