Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.
Hello World in PySide/ko
This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine. Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean. |
Attention |
This is a page dedicated to PySide (Qt4). For recent development on PySide2 (Qt5) and PySide6 (Qt6) refer to Qt for Python |
첫 번째 PySide 프로그램
PySide 설치하기의 순서대로 따라했다면 PySide가 설치되었을 것입니다. 이제부터 Qt와 파이썬 기반의 GUI 프로그램을 개발할 준비가 되었습니다. 다른 프로그래밍 프레임워크와 마찬가지로, 오랜 전통을 자랑하는 "Hello World" 프로그램부터 시작하겠습니다.
PySide의 Hello World 예제:
#!/usr/bin/python
# Import PySide classes
import sys
from PySide.QtCore import *
from PySide.QtGui import *
# Create a Qt application
app = QApplication(sys.argv)
# Create a Label and show it
label = QLabel("Hello World")
label.show()
# Enter Qt application main loop
app.exec_()
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을 생성하는 부분을 아래처럼 수정해 보세요:
label = QLabel("<font color=red size=40>Hello World</font>")