PySide 윈도우 생성 기본 코드
QWidget 클래스를 상속하는 클래스를 정의.
:: class MyWidget(QWidget):
QWidget 클래스는 모든 User Interface 클래스의 Base Class 이므로 보통 이를 상속하여 윈도우를 만든다.
생성자 메소드를 작성.
:: def __init__(self):
super(MyWidget, self).__init__() # QWidget.__init__(self)
슈퍼 클래스인 QWidget의 생성자를 명시적으로 호출하여 같이 초기화 해 준다.
메인 이벤트 루프를 구동.
PySide 응용 프로그램은 하나의 Main Application Instance를 반드시 가지고 있어야 하므로,
QApplication 인스턴스를 생성해야 한다. 이때 넘겨주는 sys.argv 는 파이썬 스크립트가 커맨드 라인으로부터 받는 인자 리스트인데,
첫 번째 인자인 argv[0]에는 실행된 파이썬 스크립트 파일 이름이 자동으로 전달된다.
파일 이름은 os에 따라 전체 경로가 될 수 도 안 될 수도 있다.
그리고 앞에 정의한 MyWidget 클래스의 인스턴스를 생성한 뒤 show() 메소드를 이용해 윈도우를 보여준다.
마지막으로 app.exec_()를 호출하여 메인 이벤트 루프에 진입한다. 본격적으로 코드가 실행되고,
프로그램이 종료될 때까지 무한 루프 상태로 들어가게 된다.
def main():
app = QtGui.QApplication(sys.argv)
win = MyWidget()
win.show()
sys.exit(app.exec_())