본문 바로가기

Language/python

Qt Designer와 PySide 사용하여 GUI 프로그래밍 하기 1/2

Qt Designer를 이용하여 GUI를 구성하고, PySide를 이용하여 각종 SIGNAL을 발생하고 발생한 SIGNAL을 처리하는 방법에 대하여 알아본다.(youtube에서 본 것을 복습하는 차원에서 차근차근 정리해 본것이다. 원본은 여기서 확인한다.)


전체적인 흐름은 다음과 같다.

Step1. Qt Designer로 GUI를 구성하여 TestWidget.ui 파일 생성

Step2. TestWidget.ui로 부터 TestWidget.py 생성

Step3. TestMainDialog.py를 만들어 1번에서 만든 pushButton에 "clicked()" SIGNAL을 showMessage 함수에 연결되도록 구성한다.

Step4. 수행하여 결과를 확인한다.


이번 글에서는 Step1과 Step2에 해당 내용만 정리를 해본다.

1. Qt Designer를 실행하여, Widget를 선택한다.

   Qt Designer는 [PythonHome]\Lib\site-packages\PySide\designer.exe 위치에서 찾을 수 있다.


2. 기본 화면이 생성됨을 확인한다.


3. Line Edit를 찾아 Form에 Drag하며 추가한다.(필터에 edit로 검색하면 쉽게 찾을 수 있다.)


4. Push Button을 찾아 Form에 Drag하여 추가한다.(필터에 button으로 검색하면 쉽게 찾을 수 있다.)


5. 보기 좋게 하기 위하여, 추가한 Line Edit와 Push Button을 선택한 후 "수평으로 배치"을 선택하여 두 GUI 객체를 수평으로 배치한다.


6. Form 화면을 눌러 "격자형으로 배치"를 선택하면 화면크기에 따라 Stretch 되는 것을 확인할 수 있다.(Ctrl + R을 눌러 미리보기가 가능하다.)



7. 준비된 GUI 구성을 TestWidget.ui로 저장한다.


8. PySide를 사용할 것이기 때문에 Command창에 pyside-uic -x TestWidget.ui -o TestWidget.py 명령을 수행한다.(PyQt4를 사용할 경우는 pyuic4 명령을 사용한다. 사용하는 인자는 동일하다.)

pyside-uic -x TestWidget.ui -o TestWidget.py



9. TestWidget.py를 열어보면 아래와 같이 생겼다.



10. TestWidget.py가 생성됨을 확인하고 수행되는지 확인한다.


자 이제 GUI 객체에 SIGNAL을 등록하고, 원하는 동작을 할수 있도록 꾸며보자.


참고사이트)