老师原课件下载地址:
有积分的朋友,支持下我,打赏也OK。
不下载也可以,我每节课会吧代码贴出来
视频链接
课程重点
代码位置
完整代码
'''
创建和使用工具栏
工具栏默认按钮:只显示图标,将文本作为悬停提示展示
工具栏按钮有3中显示状态
1. 只显示图标
2. 只显示文本
3. 同时显示文本和图标
'''
import sys,math
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
class Toolbar(QMainWindow) :
def __init__(self):
super(Toolbar,self).__init__()
self.initUI()
def initUI(self):
self.setWindowTitle("工具栏例子")
self.resize(300,200)
tb1 = self.addToolBar("File")
new = QAction(QIcon('./images/new.png'),"new",self)
tb1.addAction(new)
open = QAction(QIcon('./images/open.png'),"open",self)
tb1.addAction(open)
save = QAction(QIcon('./images/save.png'),"save",self)
tb1.addAction(save)
tb2 = self.addToolBar("File1")
new1 = QAction(QIcon('./images/new.png'),"新建",self)
tb2.addAction(new1)
tb2.setToolButtonStyle(Qt.ToolButtonTextUnderIcon)
tb1.actionTriggered.connect(self.toolbtnpressed)
tb2.actionTriggered.connect(self.toolbtnpressed)
def toolbtnpressed(self,a):
print("按下的工具栏按钮是",a.text())
if __name__ == '__main__':
app = QApplication(sys.argv)
main = Toolbar()
main.show()
sys.exit(app.exec_())
遇到的问题
self.menubar.triggered.connect(self.processTrigger)
我错以为是actionshow,导致程序报错
改写效果展示
改写注意点
改写代码(QTdesigner模式)
# -*- coding:utf-8 -*-
'''
@Author: knocky
@Blog: https://blog.csdn.net/zzx188891020
@E-mail: 188891020@qq.com
@File: class60.py
@CreateTime: 2020/5/21 16:38
'''
import sys
from PyQt5.QtWidgets import QApplication,QMainWindow
from PyQt5 import uic
class my_form(QMainWindow):
def __init__(self):
super().__init__()
uic.loadUi('../ui_package/class60.ui', self)
self.menubar.triggered.connect(self.processTrigger)
def processTrigger(self,q):
if q.text() == "show" :
self.statusbar.showMessage(q.text() + " 菜单被点击了",5000) # 显示5秒钟
if __name__ == '__main__':
app = QApplication(sys.argv)
main = my_form()
main.show()
sys.exit(app.exec_())