한국어 English French [qt-devnet.developpez.com]

첫 번째 PySide 프로그램

PySide 설치하기의 순서대로 따라했다면 PySide가 설치되었을 것입니다. 이제부터 Qt와 파이썬 기반의 GUI 프로그램을 개발할 준비가 되었습니다. 다른 프로그래밍 프레임워크와 마찬가지로, 오랜 전통을 자랑하는 “Hello World” 프로그램부터 시작하겠습니다.

PySide의 Hello World 예제:

  1. #!/usr/bin/python
  2.  
  3. # Import PySide classes
  4. import sys
  5. from PySide.QtCore import *
  6. from PySide.QtGui import *
  7.  
  8.  
  9. # Create a Qt application
  10. app = QApplication(sys.argv)
  11. # Create a Label and show it
  12. label = QLabel("Hello World")
  13. label.show()
  14. # Enter Qt application main loop
  15. app.exec_()
  16. sys.exit()

PySide 프로그램을 작성하려면 PySide.QtCore, PySide.QtGui에 있는 클래스를 가져옵니다. 여기에서 가져오는 클래스에는 PySide 프로그램을 작성하기 위해 필요한 주요 기능이 포함되어 있습니다. 예를 들어 PySide.QtGui는 위젯을 사용하기 위한 함수를 담고 있으며, PySide.QtCore는 시그널-슬롯을 위한 메서드와 프로그램을 제어하기 위한 메서드를 담고 있습니다.

가져온 후에는 QApplication을 생성하며, 이는 Qt 프로그램의 가장 중요한 클래스입니다. Qt는 명령행에서 인자를 받을 수 있으므로 QApplication 객체를 생성할 때 이 인자를 그대로 전달해야 합니다. 아직까지는 코드 내에서 인자를 사용하지는 않으므로, 특별히 신경쓸 부분은 없습니다.

QApplicatino 객체를 생성한 후에는 QLabel 객체를 생성합니다. QLabel은 텍스트나 그림을 표시하는 위젯입니다. 일반 텍스트 및 HTML 형식을 사용하는 서식 있는 텍스트를 표시할 수 있습니다. QLabel을 생성한 다음 show 메서드를 호출하는 것에 주목하세요. 이 메서드를 호출하면 QLabel이 사용자에게 표시됩니다.

마지막으로 app.exec_() 를 호출합니다. Qt의 메인 루프에 진입하여 본격적으로 Qt 프레임워크의 코드가 실행됩니다. 사실은 QLabel이 실제로 사용자에게 보여지도록 하는 처리는 여기에서 이루어집니다. 하지만 아직은 자세한 것에는 신경쓰지 않아도 됩니다.

HTML 텍스트 표시하기

위에서 설명했듯이, 서식 있는 텍스트를 표현하기 위해 HTML 태그를 삽입할 수 있습니다. QLabel을 생성하는 부분을 아래처럼 수정해 보세요:

  1. label = QLabel("<font color=red size=40>Hello World</font>")

“Hello World“가 예전보다 커지면서, 빨간색으로 표시됩니다. 크기나 색상을 바꾸거나, 깜박이게 하는 효과도 넣어 보세요. 또는 QLabel 위젯 대신에 QPushButton 같은 다른 위젯을 생성해 보세요.

Categories: