Upload
-
View
6.769
Download
11
Embed Size (px)
Citation preview
업무에서빠르게 활용하는 PyQt
임덕규
이 발표의 대상은?
• Python 의 문법을 갓 배운 새내기
• Python을 사용하고 있으나 GUI Toolkit으로 무엇을 사용하는게 좋은지 모르겠는 사람
• 여자
PyQt를 사용하게 된 계기
• 당시로는 Python을 갖 배운 개발자 새내기였음
• 인류 역사상 획기적인 아이템이라 불리우는 마우스로 내가 만든 프로그램을 쓰다듬고 싶었음
• 그나마 C 로 개발하던 WinAPI32 의 인수 길이에 질려버림
• TkInter 는 모양이 이쁘지가 않았음
PyQt를 선택한 이유
• 잘 정리되어 있는 엄청난 양의 문서
• 디자이너를 포함하고 있음
• 다른 OS에서도 큰 수정없이 재사용 할 수 있음
• 상업적 이용이 가능 (PyQt4 - LGPL, PyQt5 - GPL)
발표에 앞서
이 발표에서는
• PyQt 설치 및 주의점
• 언제나 그렇듯 첫 시작은 “안녕 세계” 만들기
• PyQt, 이것만 알면 만들 수 있다!
• 발표자의 강력한 부산 사투리 또는 양상국 말투 주의
PyQt 설치 및 주의점• google에서 pyqt 검색 또는
• https://www.riverbankcomputing.com에서 다운로드 받을 수 있다.
• Windows 는 설치 파일 실행 한번으로 간단하게 설치 가능
• 우분투 리눅스에서는 apt-get을 이용하여 설치 가능
• 이상하게도 MAC은 이것저것 컴파일하는 일까지 발생
• PyQt5 부터는 Python3 만 지원
=
PyQt5 주요 클래스
• PyQt5에서는 지난 버전인 4와 달리 Widget과 Gui가 분리되었습니다.
• QtCore - Qt에서 사용되는 상수 값들 외
• QtWidget - QtGui에서 분리되어 Widget만 모아져있음
• QtGui - QIcon, QPixmap, QFont 등 Widget이 아닌 그래픽 관련 모듈
Qt Designer로 작업하기- 동영상 -
Qt Designer로 작업하기ui 파일 다루기 - #1
uic 모듈의 loadUi() 메서드를 사용
• 장점 • ui 파일을 변환없이 바로 사용할 수 있다. • 변환 과정이 없으므로 작업속도가 빠르다.
• 단점 • 항상 ui 파일이 있어야 한다. • 에디터에서 메서드 자동완성 기능을 사용할 수 없다.
Qt Designer로 작업하기ui 파일 다루기 - #2
pyuic5를 이용하여 ui 파일을 python 파일로 변환
• 장점 - 에디터에서 메서드 자동완성 지원 • 단점 - 디자인 변경시마다 ui 파일 변환과정이 귀찮다.
Qt Designer로 작업하기ui 파일 다루기 - #3
그냥 디자이너 사용하지 않고 직접 코딩하기
• 장점 • 간단한거 만들때는 더 나
을 때가 있다. • 정확하게 위젯들을 설정
하는 ‘기분’이 든다. • 단점
• 규모가 커지는 어느 순간부터는 돌이킬 수 없다.
• 좌표 또는 레이아웃 잡는다고 시간 다 보낼 수 있다.
Qt Designer로 작업하기
Qt Designer로 작업하기
시그널과 슬롯 사용에 대한 이해
시그널과 슬롯은?
커플이다!
시그널과 슬롯 사용에 대한 이해
PushButton
clicked()
pressed()
released()
LED
turn_on()
toggled(bool)
turn_off()
trun(bool)
시그널과 슬롯의 만남 주선하기Qt Designer에서
시그널과 슬롯의 만남 주선하기직접 이어주기
해당 위젯 문서를 참고하여 슬롯 메서드를 만들어 주고 이어줌
위젯 사용
위젯 사용 - 구현
위젯 사용을 위한 구현 순서 • Qt 레퍼런스 페이지에서 해
당 위젯의 사용법 확인 • 요구하는 형식에 맞춰서 코드
작성
정리하며..
DataPort
기상 현황판
행복한 시그널 주고 받으시길 바랍니다.
QnA