老师原课件下载地址:
有积分的朋友,支持下我,打赏也OK。
不下载也可以,我每节课会吧代码贴出来
视频链接
课程重点
代码位置
完整代码
'''
创建和使用菜单
'''
import sys,math
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
class Menu(QMainWindow) :
def __init__(self):
super(Menu,self).__init__()
bar = self.menuBar() # 获取菜单栏
file = bar.addMenu("文件")
file.addAction("新建")
save = QAction("保存",self)
save.setShortcut("Ctrl + S")
file.addAction(save)
save.triggered.connect(self.process)
edit = bar.addMenu("Edit")
edit.addAction("copy")
edit.addAction("paste")
quit = QAction("退出",self)
file.addAction(quit)
def process(self,a):
print(self.sender().text())
if __name__ == '__main__':
app = QApplication(sys.argv)
main = Menu()
main.show()
sys.exit(app.exec_())
遇到的问题
解决办法,直接从text属性里修改
这个action是没有这个方法的,需要使用
self.action2.triggered.connect(self.process)
改写效果展示
改写注意点
class Menu(QMainWindow) :
save.setShortcut(“Ctrl + S”)
改写代码(QTdesigner模式)
# -*- coding:utf-8 -*-
'''
@Author: knocky
@Blog: https://blog.csdn.net/zzx188891020
@E-mail: 188891020@qq.com
@File: class58.py
@CreateTime: 2020/5/21 11:32
'''
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/class59.ui', self)
self.action2.triggered.connect(self.process)
def process(self):
print(self.sender().text())
if __name__ == '__main__':
app = QApplication(sys.argv)
main = my_form()
main.show()
sys.exit(app.exec_())