PyQt5学习教程7:在窗体中增加菜单栏和工具栏
来源:互联网 发布:小程序 ext.json 编辑:程序博客网 时间:2024/06/17 07:47
本篇文章将讲解在窗体中增加菜单栏和工具栏的方法,菜单栏和工具栏是QMainWindow的组件,我们使用QMainWindow创建对象,就可以直接使用菜单栏和工具栏。由于菜单栏和工具栏会对应相应的处理代码,我们还需增加Action对象,用于与处理函数相关联。
源程序:
import sysfrom PyQt5.QtWidgets import QWidget, \ QPushButton, \ QToolTip, \ QMessageBox, \ QApplication, \ QDesktopWidget, \ QMainWindow, \ QAction, \ qAppfrom PyQt5.QtCore import QCoreApplicationfrom PyQt5.QtGui import QFont, \ QIcon# QMainWindow是QWidget的派生类class CMainWindow(QMainWindow): def __init__(self): super().__init__() # ToolTip设置 QToolTip.setFont(QFont('华文楷体', 10)) # statusBar设置 self.statusBar().showMessage('准备就需') # 退出Action设置 exitAction = QAction(QIcon('1.png'), '&Exit', self) exitAction.setShortcut('ctrl+Q') exitAction.setStatusTip('Exit application') exitAction.triggered.connect(qApp.quit) # qApp就相当于QCoreApplication.instance() # menuBar设置 menubar = self.menuBar() fileMenu = menubar.addMenu('&File') fileMenu.addAction(exitAction) # toolBar设置 self.toolbar = self.addToolBar('Exit') self.toolbar.addAction(exitAction) # PushButton设置 btnQuit = QPushButton('退出', self) btnQuit.setToolTip("点击此按钮将退出应用程序!") btnQuit.setStatusTip("点击此按钮将退出应用程序!") btnQuit.clicked.connect(QCoreApplication.instance().quit) btnQuit.resize(btnQuit.sizeHint()) btnQuit.move(100, 100) self.resize(500, 300) self.center() self.setFont(QFont('华文楷体', 10)) self.setWindowTitle('PyQt5应用教程(snmplink编著)') self.setWindowIcon(QIcon('10.png')) self.show() def center(self): # 得到主窗体的框架信息 qr = self.frameGeometry() # 得到桌面的中心 cp = QDesktopWidget().availableGeometry().center() # 框架的中心与桌面中心对齐 qr.moveCenter(cp) # 自身窗体的左上角与框架的左上角对齐 self.move(qr.topLeft()) def closeEvent(self, QCloseEvent): reply = QMessageBox.question(self, 'PyQt5应用教程(snmplink编著)', "是否要退出应用程序?", QMessageBox.Yes | QMessageBox.No, QMessageBox.No) if reply == QMessageBox.Yes: QCloseEvent.accept() else: QCloseEvent.ignore()if __name__ == '__main__': app = QApplication(sys.argv) MainWindow = CMainWindow() sys.exit(app.exec_())
解释:
1、第9行:输入QAction模块,用于菜单栏和工具栏的时间处理。
2、第10行:增加qApp,实际上qApp就是QCoreApplication.instance(),大家如果用过QT就很清楚了。
3、第29行:声明Action对象,指定图标和文字,含有&的字母,为Alt键的关联按键,大家只需查看一下其它应用程序的菜单快捷键使用方法就应该明白了。
4、第30行:指定Action对象的快捷键。
5、第31行:指定状态栏的提示信息。
6、第32行:指定当Action对象触发事件发生时的关联函数,这里调用的是退出应用程序函数。
7、第35行:声明menubar菜单对象。
8、第36行:在menubar菜单中加入File菜单。
9、第37行:对file菜单加入事先设置好的Action。
10、第40行:设置工具栏的显示信息。
11、第41行:对工具栏加入事先设置好的Action。
程序的运行效果:
原创性文章,转载请注明出处 http://user.qzone.qq.com/2756567163。
CSDN:http://blog.csdn.net/qingwufeiyang12346
阅读全文
1 0
- PyQt5学习教程7:在窗体中增加菜单栏和工具栏
- 在PyQt5中的菜单栏和工具栏
- 在对话框中增加菜单栏,工具栏,状态栏
- PyQt5学习记录(2)---QMainWindow菜单栏、状态栏和工具栏
- PyQt5教程-07-菜单栏、工具栏、状态栏
- PyQt5学习教程6:在窗体中显示状态栏
- PyQt5中文基础教程3 菜单栏和工具栏
- PyQt5学习教程3:给窗体增加退出按钮
- 在Windows应用程序中设计菜单栏、工具栏和状态栏
- 在winform界面的菜单栏和工具栏中插入分界线
- 在mfc中,设置一个隐藏菜单栏,工具栏,状态栏,最大化、最小化、关闭按钮的窗体
- 在mfc中,如何设置一个隐藏菜单栏,工具栏,状态栏,最大化、最小化、关闭按钮的窗体
- PyQt5的菜单栏,工具栏,状态栏的合并
- PyQt5:PyQt5中的菜单和工具栏、主窗口(7)
- GTK学习3--菜单栏和工具栏
- pyQt5-菜单和工具栏
- PyQt5学习第一发(基础窗口创建 菜单栏 工具栏 状态栏 )
- PyQt5教程——菜单和工具栏(3)
- 链表排序,链表冒泡排序(算法非原创)
- 5 [BX]和loop指令
- bzoj1047理想的正方形
- 动态规划——矩阵连乘
- 44. Wildcard Matching(通配符匹配)
- PyQt5学习教程7:在窗体中增加菜单栏和工具栏
- Java工程师如何让技术越来越精湛
- 从零基础认识Ioc
- Linux 安装分区设置
- 51nod 1127 最短包含字符串
- 映射器接口,Mpper XML 文件及mappers配置
- 配置yii2的路由跟TP一样nginx(支持pathinfo路由模式)
- angular中使用ngCookies来操作cookie
- 数据结构学习笔记(16)---选择类排序