import sys
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QWidget, QApplication, QLabel, QPushButton, QDial
class 다이얼위젯(QWidget):
def __init__(self):
super().__init__()
self.UI초기화()
def UI초기화(self):
self.dial = QDial(self)
self.dial.move(30, 20)
self.dial2 = QDial(self)
self.dial2.move(200, 20)
self.dial2.setRange(0, 50)
self.dial2.setNotchesVisible(True)
self.label1 = QLabel('다이얼 1값', self)
self.label1.move(40, 130)
self.label2 = QLabel('다이얼 2값', self)
self.label2.move(210, 130)
btn = QPushButton('기본값으로 되돌리기', self)
btn.move(115, 200)
self.dial.valueChanged.connect(self.chageValue)
self.dial2.valueChanged.connect(self.chageValue)
btn.clicked.connect(self.btn_clicked)
self.setGeometry(300, 300, 500, 500)
self.setWindowTitle('QLineEdit')
self.show()
def btn_clicked(self):
self.dial.setValue(0)
self.dial2.setValue(0)
def chageValue(self):
self.label1.setText(str(self.dial.value()))
self.label2.setText(str(self.dial2.value()))
프로그램무한반복 = QApplication(sys.argv)
실행인스턴스 = 다이얼위젯()
프로그램무한반복.exec_()
다이얼은 공식문서에서 얻을 수 있는 정보가 많지 않아 코드 설명에서 설명해드리도록 하겠습니다.
self.dial2.setRange(0, 50)
self.dial2.setNotchesVisible(True)
self.dial.valueChanged.connect(self.changeValue)
self.dial2.valueChanged.connect(self.changeValue)
btn.clicked.connect(self.btn_clicked)
def changeValue(self):
self.label1.setText(str(self.dial.value()))
self.label2.setText(str(self.dial2.value()))
def btn_clicked(self):
self.dial.setValue(0)
self.dial2.setValue(0)