파이썬으로 개발을 하다보니 윈도우나 os 의 GUI 에서 프로그래밍 하는거에 재미가 들려 공부를 해보았다.
그 내용을 포스팅 해보고 자 한다.
준비 tool :
- VS CODE(개발 편집프로그램)
- python 3.9 이하 버전 3.10 부터는 2022-01-27 기준 지원이 안됩니다.
- https://www.python.org/downloads/
- pyqt5 설치
- pip install pyqt5
- pyqt5-tools 설치
- pip install pyqt5-tools
위에 내용을 전부 설치 했다면 vscode 에서 터미널을 열고 버전과 설치 확인을 합니다.
vscode 터미널 여는 단축키 : ctrl + shift + `
명령어 : python --version
pyqt5, pyqt5-tools 설치 확인
명령어 : pip list (pip 설치된 리스트 출력 한다.)
간단한 화면 출력 프로그램밍을 해봅니다.
#pyqt5_example.py
# 명령행 인수를 GUI에 전달할 수 있도록 sys를 import 한다.
import sys
# PyQt5 패키지에서 QtWidgets 모듈에 있는 QApplication 및 QWidget 클래스를 import 한다.
from PyQt5.QtWidgets import QApplication, QWidget
# 추가 명령행 이수를 전달할 수 있도록 sys.argv로 전달해 QApplication 클래스의 인스턴스를 생성 한다.
# 이 인스턴스를 app 변수에 저장 한다.
# 이렇게 하면 애플리케이션이 만들어 진다.
app = QApplication(sys.argv)
# QWidget 클래스의 인스턴스를 만들고 GUI가 된다.
# 이 인스턴스를 gui라는 로컬 변수에 저장 한다.
gui = QWidget()
# GUI를 볼 수 있도록 gui 클래스 인스턴스의 show 메서드를 호출한다.
gui.show()
# 어블리케이션 클래스 인스턴스에서 exec_ 메서드를 호출해 애플리케이션을 실행한다.
# 발생할 수 있는 예외 사항을 파악하기 위해 호출을 sys.exit 내에 래핑 한다.
# 에외가 발생하면 파이썬 애플리 케이션이 정상적으로 종료 되고 충돌하지 않는다.
sys.exit(app.exec())
타이틀을 변경 해 봅니다.
코드 중간에 gui.setWindowTitle('PyQt5 GUI') 코드를 추가 하여 gui 의 타이틀을 변경 합니다.
#pyqt5_example.py
# 명령행 인수를 GUI에 전달할 수 있도록 sys를 import 한다.
import sys
# PyQt5 패키지에서 QtWidgets 모듈에 있는 QApplication 및 QWidget 클래스를 import 한다.
from PyQt5.QtWidgets import QApplication, QWidget
# 추가 명령행 이수를 전달할 수 있도록 sys.argv로 전달해 QApplication 클래스의 인스턴스를 생성 한다.
# 이 인스턴스를 app 변수에 저장 한다.
# 이렇게 하면 애플리케이션이 만들어 진다.
app = QApplication(sys.argv)
# QWidget 클래스의 인스턴스를 만들고 GUI가 된다.
# 이 인스턴스를 gui라는 로컬 변수에 저장 한다.
gui = QWidget()
# 타이틀을 변경 합니다.
gui.setWindowTitle('PyQt5 GUI')
# GUI를 볼 수 있도록 gui 클래스 인스턴스의 show 메서드를 호출한다.
gui.show()
# 어블리케이션 클래스 인스턴스에서 exec_ 메서드를 호출해 애플리케이션을 실행한다.
# 발생할 수 있는 예외 사항을 파악하기 위해 호출을 sys.exit 내에 래핑 한다.
# 에외가 발생하면 파이썬 애플리 케이션이 정상적으로 종료 되고 충돌하지 않는다.
sys.exit(app.exec())
2장에서는 객체지향 코드로 변경 해 보도록 하겠습니다.
파이썬 ui 프로그래밍 실습 feat. PyQT5, PyQT-tools(designer)
'프로그램 파이썬 공부' 카테고리의 다른 글
파이썬 ui 프로그래밍 실습 feat. PyQT5, PyQT-tools(designer) 4장 (0) | 2022.01.30 |
---|---|
파이썬 ui 프로그래밍 실습 feat. PyQT5, PyQT-tools(designer) 3장 (0) | 2022.01.29 |
파이썬 ui 프로그래밍 실습 feat. PyQT5, PyQT-tools(designer) 2장 (0) | 2022.01.28 |
파이썬 셀레니움 사용법 2 (0) | 2022.01.19 |
파이썬 셀레니움 사용법 1 (0) | 2022.01.18 |