pyqt5를 이용한 체크박스(checkbox), 콤보박스(combo) 사용법
페이지 정보
작성자 관리자 댓글 0건 조회 561회 작성일 21-07-22 20:41본문
실행화면
qtdesigner5 를 이용하여 그림과 같이 새로만들기를 클릭한후 버튼없는 다이얼로그 상자 만들기를 선택하고
label,checkbox 2개를 화면에 배치합니다.
체크박스의 objectname은 각각 chk_apple,chk_banana로 변경합니다.
체크박스를 선택한후 속성창의 text내용은 사과와 바나나로 각각 변경합니다.
라벨선택후 속성창에서 objectname은 lbl_text로 변경합니다.
생성된 다이얼로그 폼의 이름은 exam2_pyqt5.ui로 하여 저장합니다.
화면을 실행시킨후 사과가 체크되면 텍스트의 내용을 [사과체크됨]이라고 라벨의 내용이 변경됩니다.
콤보박스 추가하기
qtdesigner5의 좌측 위젯상자에서 combo box를 다이얼로그 창으로 드래그합니다.
콤보박스 선택후 마우스 우측버튼 클릭하여 항목편집에서 첫줄은 빈칸,사자,호랑이,기린,원숭이 5개의 항목을 추가후 objecyname은 cmb_animal로 변경,
아래쪽에는 lbl_text2 라는 이름으로 라벨을 만듭니다.
코드설명
#pyqt5패키지를 추가해야 에러가 안남
#PyQt5.QtWidgets 에 있는 라이브러리 전체를 임포트하여 사용할수 있게함
import sys
from PyQt5.QtWidgets import *
from PyQt5 import uic
#UI파일 연결
#동일한 디렉토리에 exam2_pyqt5.ui파일(qtdesigner로 만든 파일)이 있어야
함
form_class2 =
uic.loadUiType("exam2_pyqt5.ui")[0]
#화면을 띄우는데 사용되는 Class 선언
class WindowClass(QMainWindow, form_class2):
def __init__(self):
super().__init__()
self.setupUi(self)
self.chk_apple.clicked.connect(self.f_clicked) #사용자가
만든 f_clicked함수를 호출함
self.chk_banana.clicked.connect(self.f_clicked)
def f_clicked(self):
if self.chk_apple.isChecked() == True & self.chk_banana.isChecked() == True:
self.lbl_text.setText("사과와
바나나 체크됨")
elif self.chk_apple.isChecked() == True: #사과체크박스가
체크되있다면
self.lbl_text.setText("사과
체크됨")
#라벨의 내용을 변경함
elif self.chk_banana.isChecked() == True:
self.lbl_text.setText("바나나
체크됨")
else:
self.lbl_text.setText("체크된
과일이 없음")
if __name__ == "__main__" :
app = QApplication(sys.argv)
myWindow = WindowClass() #클래스의 인스턴스 생성
myWindow.show() #화면을
보여줌
app.exec_()
첨부파일
- exam2_pyqt5.py (1.8K) 6회 다운로드 | DATE : 2021-07-22 20:41:38
- exam2_pyqt5.ui (2.4K) 8회 다운로드 | DATE : 2021-07-22 20:41:38
- 이전글pyqt5를 이용한 메인폼,라디오버튼,달력 사용예제[exam3_pyqt5] 21.07.25
- 다음글api를 이용하여 기상청 동네예보(초단기실황) 가져오기(exam_api) 21.07.09
댓글목록
등록된 댓글이 없습니다.