LCD Number:时间显示器效果图如下:
代码实现:
from PySide2.QtWidgets import QApplication,QMainWindow,QLCDNumber,QLabel
from PySide2.QtCore import QTimer
import time
class Stats():
def __init__(self):
''' 一、首先需要创建主窗口 '''
self.window = QMainWindow()
self.window.resize(600, 150)
self.window.move(300, 310)
self.window.setWindowTitle('LCD Number')
'''2、创建一个显示标题的控件'''
self.time_label = QLabel(self.window)
self.time_label.setText("北京时间:")
self.time_label.setStyleSheet('''
font-size: 16pt;
color: red;
''')
self.time_label.move(30, 45)
self.time_label.resize(200, 41)
'''3、创建一个LCD Number 控件'''
self.LCD = QLCDNumber(self.window)
self.LCD.move(150, 30)
self.LCD.resize(270, 60)
self.lcd_styleRule()
def lcd_styleRule(self):
'''
1、 setSegmentStyle :设置数字液晶屏内容样式,参数有:QLCDNumber.[Outline, Filled, Flat]
Outline :产生填充有背景色的凸起段
Fileled :产生充满前景色的凸起段
Flat : 产生填充有前景色的平面段
2、 setDigitCount() :设置要显示的数字位数
3、 QTimer() :实例化时间控件
4、 timeout.connect():设置时间控件显示运行时间后关联的方法
5、 start() : 时间控件开始运行
6、 setInterval(1000):时间显示器数据刷新频率,1000即为1s
'''
self.LCD.setSegmentStyle(QLCDNumber.Flat)
self.LCD.setDigitCount(19)
self.timer = QTimer(self.window)
self.timer.timeout.connect(self.showTime)
self.timer.start()
self.timer.setInterval(1000)
'''时间控件显示时间'''
def showTime(self):
BJ_time = time.strftime('%Y-%m-%d %H:%M:%S')
self.LCD.display(BJ_time)
if __name__ == '__main__':
app = QApplication([])
stats = Stats()
stats.window.show()
app.exec_()