Python으로 GUI 프로그램을 만들고 싶지만 어디서부터 시작해야 할지 막막하셨나요?  

이 글에서는 PySide6를 활용해 GUI 프로그램을 만드는 초기 과정을 단계별로 소개합니다.  

디자인부터 이벤트 처리까지, 따라만 하면 나만의 프로그램이 완성됩니다!


1. UI 디자인: QtDesigner로 시작하기

GUI의 외형은 QtDesigner를 사용해 손쉽게 만들 수 있어요.  

드래그 앤 드롭 방식으로 버튼, 텍스트박스 등을 배치하고 `.ui` 파일로 저장합니다.


2. UI 파일을 Python 코드로 변환하기

디자인한 `.ui` 파일을 Python에서 사용할 수 있도록 변환해줘야 합니다.  

터미널에서 아래 명령어를 실행하세요:

pyside6-uic xxx.ui -o xxx.py

이제 UI가 Python 코드로 변환되어 연동 준비 완료!


3. MainWindow에 UI 연동하기

이제 본격적으로 프로그램의 메인 윈도우를 만들어볼게요.

from PySide6.QtWidgets import QMainWindow 
from ui.ui_main import Ui_MainWindow

class MainWindow(QMainWindow): 
    def init(self): 
        super(MainWindow, self).init() self.ui = Ui_MainWindow() 
        self.ui.setupUi(self) 
        self.setWindowTitle("PLC Emulator v1.0") self.show() 

setupUi(self)를 통해 UI 요소들이 MainWindow에 연결됩니다.


4. 프로그램 실행하기

이제 프로그램을 실행할 준비가 되었어요! main.py를 만들어 아래처럼 작성해보세요:

from PySide6.QtWidgets import QApplication 
from ui.MainWindow import MainWindow 
import sys

if name == 'main': 
    app = QApplication(sys.argv) 
    window = MainWindow() 
    sys.exit(app.exec()) 

실행은 간단하게:

python main.py 

5. 버튼 등 컨트롤 이벤트 등록하기

UI에 있는 버튼이나 입력창에 이벤트를 연결해보세요. 예를 들어, 새로고침 버튼을 눌렀을 때 동작하도록 설정하려면:

class MainWindow(QMainWindow):
     def __init__(self):
         ...
         self.ui.pushButton_refresh.clicked.connect(self.refreshPressed) 
         ...


     def refreshPressed(self): 
         print("refreshPressed was invoked") 

이렇게 하면 버튼 클릭 시 refreshPressed 함수가 실행됩니다!


마무리하며

이 튜토리얼을 따라하면 PySide6 기반의 GUI 프로그램을 처음부터 끝까지 만들 수 있어요. 디자인부터 이벤트 처리까지, 하나씩 구현해보며 나만의 프로그램을 완성해보세요!


0개의 댓글

답글 남기기

Avatar placeholder

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

ko_KRKorean