PyQt5_QDial_圆表盘控件案例

# 倒圆的范围控制
# 汽车仪表盘速度计
# QDial

from PyQt5.Qt import *

class MyWindow(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle('QDial_操作')
        self.resize(500,500)
        self.iniUI()

    def iniUI(self):
        dial = QDial(self)
        dial.setRange(30,150)           #设置范围
        dial.setNotchesVisible(True)    #设置刻度
        dial.setPageStep(20)            #翻页步长
        dial.setWrapping(True)          #刻度不留缺口
        dial.setNotchTarget(50)         #设置刻度密度,即单位刻度所代表的大小

        label = QLabel(self)
        self.label = label
        label.setAlignment(Qt.AlignCenter)

        label.resize(self.width() / 3, self.height() / 3)
        label.move((self.width() - label.width()) / 2, (self.height() - label.height()) * 0.8 / 2)


        def cao(value):
            label.setText(str(value))
            label.setStyleSheet('font-size:{}px;background-color:cyan;'.format(value))
            label.adjustSize()
        dial.valueChanged.connect(cao)

if __name__ == '__main__':
    import sys
    app = QApplication(sys.argv)


    win = MyWindow()
    win.show()
    sys.exit(app.exec_())

PyQt5_QDial_圆表盘控件案例_第1张图片

你可能感兴趣的:(PyQt5)