气轻PyQt6 18 LCD显示器(QLCDNumber)
来源:哔哩哔哩     时间:2023-03-30 07:54:33

本程序与【气轻PyQt6 12】类似,用LCD显示器取代了文本框,效果有所不同。

from PyQt6.QtWidgets import *


(相关资料图)

from PyQt6.QtGui import QIcon, QPixmap

from PyQt6.QtCore import Qt, QDate, pyqtSignal

import sys

class PyQt618(QWidget):

def __init__(self):

super().__init__()

self.initUI()

def initUI(self):

self.setWindowTitle('气轻PyQt6')                # 设置窗口标题

self.resize(290, 50)                            # 设置窗口大小

self.setStyleSheet('background-color:#40E0D0')

dateData = QDate.currentDate()

dateLabel = dateData.toString(Qt.DateFormat.ISODate)

self.lcd = QLCDNumber(self)

self.lcd.setGeometry(10, 0,230, 40)             # 设置位置和大小

self.lcd.setDigitCount(12)                      # 设置显示位数

self.lcd.display(dateLabel)

self.lcd.setStyleSheet('background-color:#7A67EE;color : #32CD32; \

font: bold large /"Times New Roman/";font-size:25px')

self.btn = QPushButton('', self)

self.btn.setGeometry(240,0,40,40)               # 设置位置和大小

self.btn.setIcon(QIcon(QPixmap('Date.png')))

self.btn.clicked.connect(self.calendarOn)

self.btn.setStyleSheet('background-color:#DAA520')

self.btn.setToolTip('选择日期')                 # 设置label提示

self.show()

def calendarOn( self ):

self.calWin = CalendarWin()

self.calWin.show()

self.calWin.signal.connect(self.lcd.display)     # 连接信号与槽

########################################################@####################

class CalendarWin(QWidget):

signal = pyqtSignal( str )                          #定义一个信号

def __init__(self):

super().__init__()

self.setWindowTitle('日期')

cal = QCalendarWidget(self)

cal.setGridVisible(True)

self.setGeometry(800,600,280, 220)              # 设置位置和大小

cal.clicked[QDate].connect(self.emitDate)       # 按下按钮时发送信号

def emitDate(self,date):

self.signal.emit(date.toString("yyyy-MM-dd"))

self.close()

if __name__ == '__main__':

app = QApplication(sys.argv)

window = PyQt618()

sys.exit(app.exec())

执行结果

关键词:

新闻推荐