본문 바로가기
반응형

pyqt4

Day 9. PyQt5 (Dialogs) Dialogs는 GUI 구성요소 중 user와 communicate할 수 있도록 해주는 구성요소이다. 파일을 열고 저장한다던가 글자의 색을 바꾼다던가 등의 main UI와는 별도로 존재하는 windows를 dialogs라 한다. 조금더 기술적인 용어로 접근하면 dialogs는 modal (or blocking) windows이다. 다시 말해서, dialogs가 실행되면 main UI는 해당 dialogs가 닫힐 때까지 사용할 수 없는 상태가 된다. Qt의 dialog box는 QDialog class에 의해 handling된다. 따라서, 단순한 대화창을 만들고 싶다면 QDialog 객체를 QMainWindow에 전달하면 된다. import sys from PyQt5.QtWidgets import ( QA.. 2021. 3. 30.
Day 7. PyQt5 (Layouts) 앞서 정리한 포스트들은 통해서 어떠한 위젯이 있는지 간단하게 알아보았다. 하지만 단일 위젯은 사용에 제한적이고 더불어 미적으로도 Layout 없이 사용하는 것은 예쁘지 않다. QHBoxLayout, QVBoxLayout, QGridLayout, QStackedLayout 이렇게 4가지 Layout을 사용할 수 있다. 이름에서 보는 것처럼 수평으로 위젯을 구성하는 Layout이면 QHBoxLayout을 사용하고 반대로 수직으로 구성한다면 QVBoxLayout을 사용할 수 있다. QGridLayout은 행렬과 같이 행과 열이 있는 Layout을 떠오르면 쉽고 QStackedLayout은 동일 화면에 여러 위젯이 쌓여있는 형태로 보면 된다. 자세한 내용은 예제 코드로 함께 정리해보고자 한다. 물론 각 Layo.. 2021. 3. 19.
Day 6. PyQt5 (QSpinBox, QSlider, QDial) QSpinBox와 QDoubleSpinBox는 숫자를 입력할 수 있는 input box와 함께 증가, 감소를 적용할 수 있는 화살표가 존재하는 위젯이다. 두 가지는 동일한 기능을 하며 정수형 value를 사용하게 되면 QSpinBox를 실수형은 QDoubleSpinBox를 사용하면 된다. import sys from PyQt5.QtCore import Qt from PyQt5.QtWidgets import QApplication, QMainWindow, QSpinBox class MainWindow(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle("My App") widget = QSpinBox() # Or: widget .. 2021. 3. 18.
Day 1. PyQt5 사용해보기 - 빈 윈도우 띄우기 그리고 이벤트 루프 나는 회사에 입사 후 현장에 사용될 스위치 컨피그를 만들어주는 GUI Application을 만들어서 배포했다. 기존에는 txt 파일로 저장된 내용을 Mangement IP와 일부 Vlan 정보만 바꾸어 사용하다보니 Human Error가 많을 수 밖에 없었다. 예를 들면, spanning-tree의 vlan range를 오설정 한다던가 trunking vlan 오설정 등. 그래서 그런 Human Error를 최소화 하고자 PyQt5를 이용해서 간단한 Application을 만들었다. GUI 프로그래밍에 대한 탄탄한 지식이 있었던 건 아니었고 구글링으로 원하는 Application을 만들었고 현재도 동료들의 Feedback을 통해서 지속적으로 업데이트하고 있다. 잘 디자인된 프로그래밍이라고 하기엔 다소 .. 2021. 2. 4.
반응형