IT(57)
-
[PyQt5] 위젯, 라디오, 단일, 선택
라디오 버튼은 여러 선택 중에서 1개만 선택할 때 사용합니다. 선택한 버튼에 따라 다르게 출력되는 기능을 만들었습니다. import sys from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton, QHBoxLayout, QLabel from PyQt5.QtCore import Qt class Radiodemo(QWidget): def __init__(self, parent=None): super(Radiodemo, self).__init__(parent) layout = QHBoxLayout() b1 = QRadioButton('첫 번째 버튼') b1.setChecked(True) b1.toggled.connect(lambda: self.btns..
2020.02.12 -
[PyQt5] 위젯, 체크박스, 메소드, 변화,
체크박스를 사용해서 체크했을 때, 체크를 풀었을 때 상황에 따라 다양한 옵션을 적용할 수 있습니다. import sys from PyQt5.QtWidgets import QApplication, QWidget, QCheckBox from PyQt5.QtCore import Qt class QCheckBoxApp(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): checkbox1 = QCheckBox('첫 번째 체크박스', self) checkbox2 = QCheckBox('두 번째 체크박스', self) checkbox1.move(20,10) checkbox2.move(20, 30) checkbox1.toggl..
2020.02.12 -
[PyQt5] 위젯, 레이블, 라벨, 텍스트, 글
위젝 중에서 라벨 기능을 사용하면 원하는 글자를 출력할 수 있습니다. import sys from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QVBoxLayout from PyQt5.QtCore import Qt class QLabelApp(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): label1 = QLabel("첫 번째 라벨",self) label2 = QLabel("두 번째 라벨", self) print(f'--> Qt.AlignCenter : { Qt.AlignCenter }') print(f'--> Qt.AlignVCenter : {Qt.Ali..
2020.02.12 -
[PyQt5] 위젯, 버튼, 입력, 시그널, 매소드
GUI에는 수많은 버튼이 들어갑니다. 각 버튼마다 표시되는 방법과 역할을 직접 지정할 수 있습니다. import sys from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QVBoxLayout class QPushButtonApp(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): btn1 = QPushButton('버튼1', self) btn2 = QPushButton('버튼2', self) btn3 = QPushButton('버튼3', self) btn1.setCheckable(True) btn1.toggle() btn2.setText('버튼이름'..
2020.02.12 -
[PyQt5] 레이아웃, 배치, 그리드, 행열, 테이블
정렬 방식 중 그리드 방식 있습니다. 상대배치로 창 크기에 따라 동적으로 크기가 조절되며 박스 레이아웃과 다르게 테이블 구조로 되어 있습니다. 비율이 아닌 행과 열의 정보를 입력하여 배치합니다. import sys from PyQt5.QtWidgets import QApplication, QWidget, QGridLayout, QLabel, QLineEdit, QTextEdit class gridLayoutApp(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): grid = QGridLayout() self.setLayout(grid) grid.addWidget(QLabel('그리드1'), 0, 0) grid...
2020.02.12 -
[PyQt5] 레이아웃, 배치, 박스, 가로, 세로
이전에 절대배치에 대해서 알아보았는데, 이번에는 상대배치를 만들어 보았습니다. pyqt5에서는 '박스'라는 개념을 사용하는데 가로박스와 세로박스로 구분하며 사용자는 박스의 위치를 비율로 입력합니다. 그러면 창 크기가 달라져도 그에 맞추어 자동으로 위치가 맞추어집니다. import sys from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QHBoxLayout, QVBoxLayout class boxLayoutApp(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): btn_ok = QPushButton('확인') btn_cancel = QPushBut..
2020.02.12