728x90
반응형

 

PyQt5는 Python에서 GUI(Graphical User Interface)를 구현하기 위해 널리 사용되는 라이브러리입니다. 이번 포스팅에서는 PyQt5를 사용해 간단한 창을 여는 방법을 소개합니다.


1. PyQt5 설치하기

PyQt5를 사용하기 위해서는 먼저 라이브러리를 설치해야 합니다. 다음 명령어를 터미널이나 커맨드라인에서 실행하세요:

> pip install pyqt5

설치가 성공적으로 완료되면 PyQt5와 관련된 패키지가 다운로드됩니다. 출력 예시는 다음과 같습니다:

Collecting pyqt5
  Downloading PyQt5-5.15.11-cp38-abi3-win_amd64.whl (6.9 MB)
   ...
Successfully installed PyQt5-Qt5-5.15.2 PyQt5-sip-12.16.1 pyqt5-5.15.11

 


2. PyQt5 기본 코드 설명

다음은 PyQt5를 사용해 간단한 창을 만드는 코드입니다:

전체 코드

import sys
from PyQt5.QtWidgets import QApplication, QWidget


class MyApp(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle('My First Application')
        self.move(300, 300)
        self.resize(400, 200)
        self.show()


if __name__ == '__main__':
   app = QApplication(sys.argv)
   ex = MyApp()
   sys.exit(app.exec_())

728x90

코드 분석

1. PyQt5 모듈 가져오기

import sys
from PyQt5.QtWidgets import QApplication, QWidget
  • sys: 시스템 관련 작업을 처리하기 위한 모듈입니다. 프로그램 종료 시 필요한 인자를 전달합니다.
  • QApplication: PyQt5 프로그램에서 반드시 생성해야 하는 객체로, GUI 애플리케이션의 기본적인 환경을 제공합니다.
  • QWidget: PyQt5에서 기본 창 역할을 하는 클래스입니다.

2. MyApp 클래스 정의

class MyApp(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()
  • MyAppQWidget을 상속받아 정의한 클래스입니다.
  • __init__ 메서드에서 부모 클래스(QWidget)의 생성자를 호출한 뒤, 사용자 정의 초기화 메서드 initUI()를 실행합니다.

3. UI 초기화

    def initUI(self):
        self.setWindowTitle('My First Application')
        self.move(300, 300)
        self.resize(400, 200)
        self.show()
  • setWindowTitle: 창의 제목을 설정합니다.
  • move: 창의 시작 위치를 설정합니다. (x=300, y=300)
  • resize: 창의 크기를 설정합니다. (너비 400, 높이 200)
  • show: 창을 화면에 표시합니다.

4. 프로그램 실행

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = MyApp()
    sys.exit(app.exec_())
  • QApplication 객체 생성: sys.argv를 인자로 전달하여 애플리케이션 객체를 생성합니다.
  • MyApp 객체 생성: MyApp 클래스의 인스턴스를 생성합니다.
  • app.exec_(): 이벤트 루프를 실행합니다. 프로그램이 종료될 때까지 계속 실행되며, 종료 시 반환 값을 시스템에 전달합니다.

3. 실행 결과

위 코드를 실행하면 다음과 같은 창이 열립니다:

  • 제목: My First Application
  • 크기: 400 x 200
  • 위치: 화면에서 x=300, y=300 지점에 표시

 


4. 추가적인 내용

PyQt5 학습 포인트

  1. 위젯 추가하기: 창에 버튼, 레이블, 텍스트 입력창 등을 추가하는 방법을 학습하세요.
  2. 레이아웃 관리: 위젯들을 창 내부에서 효율적으로 배치하는 방법을 익히세요.
  3. 이벤트 처리: 버튼 클릭 등 사용자 동작에 반응하는 이벤트를 처리하는 방법을 알아보세요.

참고 자료


이번 포스팅에서는 PyQt5를 이용한 간단한 창 구현 방법을 살펴보았습니다. PyQt5는 강력한 기능을 제공하며, 이를 활용해 다양한 GUI 애플리케이션을 제작할 수 있습니다. 앞으로 PyQt5로 더욱 흥미로운 애플리케이션을 만들어 보세요!

728x90
반응형

+ Recent posts