2017-01-11 135 views
1

我寫了一個Python 3.4的代碼,它使用PyQt4的GUI模塊,但是Python PyQt的界面代碼當我運行它不會顯示任何模塊好心幫沒有運行

import sys 
from PyQt4 import QtGui,QtCore 

class window(QtGui.QMainWindow): 

    def _init_(self): 
     super(Window, self)._init_() 
     self.setGeometry(50,50,500,300) 
     self.setWindowTitle("Tallman Server") 
     self.setWindowIcon(QtGui.QIcon("tracking.png")) 
     self.home() 
    def home(): 
      btn=QtGui.QPushButton("Quit",self) 
      btn.clicked.connect(QtCore.QCoreApplication.instance().quit) 
      self.show() 


def run():  
     app=QtGui.QApplication(sys.argv) 
     GUI=window() 
     sys.exit(app.exec_()) 

run() 

回答

1

首先,函數的名稱爲__init__,而不是_init_。 其次,您必須將self參數添加到home()

這些更改將解決您的問題。

修改後的代碼:

import sys 
from PyQt4 import QtGui,QtCore 

class window(QtGui.QMainWindow): 

    def __init__(self): 
     super(window, self).__init__() 
     self.setGeometry(50,50,500,300) 
     self.setWindowTitle("Tallman Server") 
     self.setWindowIcon(QtGui.QIcon("tracking.png")) 
     self.home() 
    def home(self): 
     btn=QtGui.QPushButton("Quit",self) 
     btn.clicked.connect(QtCore.QCoreApplication.instance().quit) 
     self.show() 


def run(): 
    app=QtGui.QApplication(sys.argv) 
    GUI=window() 
    sys.exit(app.exec_()) 

run() 
+0

感謝很大的幫助我在PyQt的尼夫新認識的小錯誤可能使程序無法正常工作。 – tallman

+0

@tallman:'__init__'和'self'是python面向對象特性的一部分,與'pyqt'無關。我建議你讓自己熟悉課程,例如[本文檔](https://docs.python.org/2/tutorial/classes.html#class-objects)對其進行了解釋。否則,你將在未來遇到類似的問題 – hansaplast