728x90
반응형
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QColorDialog
from PyQt5.QtGui import QColor
class ColorDialogApp(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 윈도우 타이틀 설정
self.setWindowTitle('Color Dialog Example')
# 윈도우 크기 설정
self.setGeometry(100, 100, 300, 200)
# 버튼 생성 및 위치 설정
self.button = QPushButton('Select Color', self)
self.button.move(50, 50)
# 버튼 클릭 시 이벤트 연결
self.button.clicked.connect(self.openColorDialog)
# 초기 색상 설정 (검은색)
self.color = QColor(0, 0, 0)
def openColorDialog(self):
# QColorDialog를 이용하여 색상 선택 다이얼로그 열기
color = QColorDialog.getColor(self.color, self, 'Select Color')
# 만약 사용자가 색상을 선택하고 "확인" 버튼을 눌렀을 때
if color.isValid():
# 선택한 색상을 저장
self.color = color
# 윈도우의 배경색을 선택한 색상으로 변경
self.setStyleSheet("background-color: %s" % color.name())
if __name__ == '__main__':
# PyQt5 애플리케이션을 실행하기 위한 QApplication 인스턴스 생성
app = QApplication(sys.argv)
# ColorDialogApp 클래스의 인스턴스 생성
ex = ColorDialogApp()
# 윈도우 보이기
ex.show()
# 애플리케이션 이벤트 루프 시작
sys.exit(app.exec_())
이 코드는 PyQt5를 사용하여 단순한 색상 선택 애플리케이션을 만드는 방법을 보여줍니다.
- ColorDialogApp 클래스: PyQt5의 QWidget 클래스를 상속받은 사용자 정의 위젯입니다. 색상 선택 다이얼로그를 포함하는 메인 윈도우입니다.
- initUI 메서드: 위젯의 초기 UI를 설정하는 메서드입니다. 윈도우 타이틀을 설정하고 버튼을 생성하고 배치하며, 버튼의 클릭 이벤트와 연결될 함수를 지정합니다.
- openColorDialog 메서드: 버튼이 클릭되면 호출되는 메서드로, QColorDialog를 열어 사용자에게 색상 선택을 허용합니다. 사용자가 색상을 선택하고 확인을 누르면 선택한 색상이 윈도우의 배경색으로 설정됩니다.
728x90
반응형
'프로그래밍 > python' 카테고리의 다른 글
PyQt5 QFileDialog 상세한 사용법 (0) | 2024.06.09 |
---|---|
PyQt5 QFontDialog 상세한 사용법 (0) | 2024.06.09 |
PyQt5 QTextBrowser 사용법 가이드 (0) | 2024.06.04 |
PyQt5 QDateEdit 위젯 사용법 (0) | 2024.06.02 |
PyQt5 QSpinBox 사용 방법 가이드 (0) | 2024.06.02 |