PyQt5 튜토리얼-기본 창
PyQt5 기본 창
PyQt5에서 기본 창을 만들 것입니다.
import sys
from PyQt5 import QtWidgets
def basicWindow():
app = QtWidgets.QApplication(sys.argv)
windowExample = QtWidgets.QWidget()
windowExample.setWindowTitle("Basic Window Example")
windowExample.show()
sys.exit(app.exec_())
basicWindow()
from PyQt5 import QtWidgets
그래픽 사용자 인터페이스에 액세스 할 수 있도록 QtWidgets
모듈을 가져옵니다.
app = QtWidgets.QApplication(sys.argv)
이벤트 루프에 액세스 할 수있는 응용 프로그램 객체를 만듭니다.
windowExample = QtWidgets.QWidget()
그런 다음 QtWidget
을 만들어야합니다. QTWidget 을 최상위 창으로 사용하고 원하는 모든 것이 포함되어 있기 때문입니다.
windowExample.setWindowTitle("Basic Window Example")
setWindowTitle
은 창 제목을 설정하며 필요할 때마다 호출 할 수 있습니다.
windowExample.show()
창을 표시해야합니다.
sys.exit(app.exec_())
app.exec_()
함수를 사용하여 해당 이벤트 루프를 시작해야합니다.
이 작업을 수행하지 않으면 프로그램 자체가 계속 실행되지 않기 때문에 프로그램이 곧바로 실행되며 여기에서이 이벤트 루프는 이벤트가 실행되기를 기다리고 있습니다.
basicWindow()
이제 우리는 창 실행을 시작하기 위해 호출 할 수있는 함수에 모든 것을 넣을 것입니다.
PyQt5 창 크기 변경
창의 크기를 변경하려면 창 위젯의 setGeometry()
메소드를 사용할 수 있습니다.
import sys
from PyQt5 import QtWidgets
def basicWindow():
app = QtWidgets.QApplication(sys.argv)
windowExample = QtWidgets.QWidget()
windowExample.setGeometry(0, 0, 400, 400)
windowExample.setWindowTitle("Basic Window Example")
windowExample.show()
sys.exit(app.exec_())
basicWindow()
windowExample.setGeometry(0, 0, 400, 400)
setGeometry()
메소드는 4 개의 정수를 입력 인수로 취합니다.
- X 좌표
- Y 좌표
- 프레임 너비
- 프레임 높이
따라서 창 크기의 예는 400 x 400
픽셀입니다.
PyQt5 창 추가 아이콘
import sys
from PyQt5 import QtWidgets, QtGui
def basicWindow():
app = QtWidgets.QApplication(sys.argv)
windowExample = QtWidgets.QWidget()
windowExample.setWindowTitle("Basic Window Example")
windowExample.setWindowIcon(QtGui.QIcon("python.jpg"))
windowExample.show()
sys.exit(app.exec_())
basicWindow()
windowExample.setWindowIcon(QtGui.QIcon("python.jpg"))
윈도우 아이콘을 python.jpg
로 설정합니다. setWindowIcon
메소드의 매개 변수는 QtGui
모듈의 QIcon
객체입니다.
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook