Python基础 | Pyqt5 工具栏添加时间显示

文件名:statusbarShowtime.py

库:datetime, time, qdarkstyle, Pyqt5

直接上代码

# coding:utf-8
# @Time:2022-01-10 22:38
# @Author:Kevin
# @Software:PyCharm

import datetime
import sys
import time

from PyQt5 import QtWidgets, QtGui, QtCore
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QMainWindow
import qdarkstyle


class MyMainWindow(QMainWindow):

    def __init__(self):
        super().__init__()
        self.num = 0
        self.InitGUI()

    def InitGUI(self):
        """初始化界面"""
        self.resize(800, 600)
        self.setWindowTitle('菜单和工具条')
        self.setWindowIcon(QtGui.QIcon('favicon.ico'))

        '''设置标签,lable0用于实时显示时间'''
        self.label0 = QtWidgets.QLabel(self)
        timer = QtCore.QTimer(self.label0)
        timer.timeout.connect(self.showtime)
        timer.start()
        self.label1 = QtWidgets.QLabel(self)
        self.label1.setText('这是一个测试菜单和工具条的程序')
        '''设置状态栏'''
        self.statusBar().addPermanentWidget(self.label1)
        self.statusBar().addPermanentWidget(self.label0)

        '''设置按钮'''
        self.button = QtWidgets.QPushButton(self)
        self.button.setText('点击')
        self.button.setGeometry(QtCore.QRect(100, 20, 120, 50))
        self.button.move(200, 300)
        '''单击退出操作'''
        self.button.clicked.connect(self.ModifyStatusBar)

        '''添加菜单函数'''
        self.AddMenu()
        self.AddToolbar()

    def AddMenu(self):
        """
        设置菜单的动作
        """
        self.Action1 = QtWidgets.QAction(QtGui.QIcon('favicon.ico'), '新建', self)  # 可以添加图标

        self.Action1.setShortcut('Ctrl+N')
        self.Action2 = QtWidgets.QAction('打开', self)
        self.Action3 = QtWidgets.QAction('保存', self)
        self.Action4 = QtWidgets.QAction('退出', self)
        self.Action4.setShortcut('Ctrl+Q')
        self.Action4.triggered.connect(quit)
        self.Action5 = QtWidgets.QAction('撤回', self)

        '''添加菜单'''
        self.Menubar1 = self.menuBar()  # 因为是MainWindow,所以采用self.menuBar(),如果用QtWidgets.MenuBar(self),则会出现位置不对的情况
        '''添加第一组菜单'''
        self.menu1 = self.Menubar1.addMenu('文件')
        self.menu1.addAction(self.Action1)
        self.menu1.addAction(self.Action2)
        self.menu1.addAction(self.Action3)
        self.menu1.addAction(self.Action4)
        '''添加第二组菜单'''
        self.menu2 = self.Menubar1.addMenu('编辑')

    '''添加工具条函数'''
    def AddToolbar(self):
        """创建工具条的动作"""
        self.ToolActions1 = QtWidgets.QAction(QtGui.QIcon('favicon.ico'), '新建', self)
        self.ToolActions1.setToolTip('新建')
        self.ToolActions1.setIconText('新建')

        self.ToolActions2 = QtWidgets.QAction('打开', self)

        '''添加工具条'''
        self.toobar1 = self.addToolBar('打开')
        '''为工具条添加动作'''
        self.toobar1.addAction(self.ToolActions1)
        # toolbar.setToolButtonStyle(Qt.ToolButtonTextUnderIcon) # 文字图片垂直排列
        self.toobar1.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)  # 文件图片并排排列
        self.toobar1.addAction(self.ToolActions2)

    def ModifyStatusBar(self):
        try:
            self.num += 1
            self.timestr = datetime.datetime.now()
            self.label1.setText('这是第 %d' % self.num + ' 次点击' + '        ' + str(self.timestr))
        except Exception as e:
            print(e)
            print('槽函数有问题!')

    def showtime(self):
        """
        显示时间
        """
        self.label0.setText("     " + str(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())))


if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    app.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())
    GUI = MyMainWindow()
    GUI.show()
    sys.exit(app.exec_())

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值