PySide学习笔记第六章-菜单和工具栏
2016-04-29 10:25
537 查看
首先我们用QtGui.QMainWindow class 创建一个主窗口,然后在该主窗口中才能创建 状态栏,工具栏,以及菜单栏
一、创建状态栏
二、菜单栏
在该例子中,我们创建了一个只有一个菜单的菜单栏,菜单包含一个关闭窗口的动作。而且还有一个状态栏的动作,通过Ctrl+Q快捷键也可以关闭窗口
三、工具栏
在Qt里,菜单包含里所有我们可以在一个应用中用到的命令,而工具栏提供了一种快捷方式来触发大多数常用的命令(即快捷键功能)
四、将以上所有功能融合
一、创建状态栏
# -*- coding: utf-8 -*- import sys from PySide import QtGui class Example(QtGui.QMainWindow): def __init__(self): super(Example, self).__init__() self.initUI() def initUI(self): self.statusBar().showMessage('Ready')# 在QtGui.QMainWindow中创建一个状态栏,然后设置状态栏显示的信息 self.setGeometry(300, 300, 100, 50) self.setWindowTitle('Statusbar') self.show() def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == '__main__': main()
二、菜单栏
在该例子中,我们创建了一个只有一个菜单的菜单栏,菜单包含一个关闭窗口的动作。而且还有一个状态栏的动作,通过Ctrl+Q快捷键也可以关闭窗口
# -*- coding: utf-8 -*- """ ZetCode PySide tutorial This program creates a menubar. author: Jan Bodnar website: zetcode.com last edited: August 2011 """ import sys from PySide import QtGui class Example(QtGui.QMainWindow): def __init__(self): super(Example, self).__init__() self.initUI() def initUI(self): exitAction = QtGui.QAction(QtGui.QIcon('exit.png'), '&Exit', self) # 创建一个退出动作,该动作会关闭当前窗口 exitAction.setShortcut('Ctrl+Q') # 自定义快捷键 exitAction.setStatusTip('Exit application') # 状态栏提示 exitAction.triggered.connect(self.close) # 利用信号槽机制,将退出动作和窗口的关闭函数联系起来 self.statusBar() menubar = self.menuBar() # 创建一个菜单栏 fileMenu = menubar.addMenu('&File') # 在菜单栏中添加 菜单 fileMenu.addAction(exitAction) # 将前面创建的exitAction添加到该菜单 self.setGeometry(300, 300, 250, 150) self.setWindowTitle('Menubar') self.show() def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == '__main__': main()
三、工具栏
在Qt里,菜单包含里所有我们可以在一个应用中用到的命令,而工具栏提供了一种快捷方式来触发大多数常用的命令(即快捷键功能)
#!/usr/bin/python # -*- coding: utf-8 -*- """ ZetCode PySide tutorial This program creates a toolbar. author: Jan Bodnar website: zetcode.com last edited: August 2011 """ import sys from PySide import QtGui class Example(QtGui.QMainWindow): def __init__(self): super(Example, self).__init__() self.initUI() def initUI(self): exitAction = QtGui.QAction(QtGui.QIcon('exit.png'), 'Exit', self) exitAction.setShortcut('Ctrl+Q') exitAction.triggered.connect(self.close) self.toolbar = self.addToolBar('Exit') self.toolbar.addAction(exitAction) self.setGeometry(300, 300, 350, 250) self.setWindowTitle('Toolbar') self.show() def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == '__main__': main()
四、将以上所有功能融合
# -*- coding: utf-8 -*- """ ZetCode PySide tutorial This program creates a skeleton of a classic GUI application with a menubar, toolbar, statusbar and a central widget. author: Jan Bodnar website: zetcode.com last edited: August 2011 """ import sys from PySide import QtGui class Example(QtGui.QMainWindow): def __init__(self): super(Example, self).__init__() self.initUI() def initUI(self): textEdit = QtGui.QTextEdit() self.setCentralWidget(textEdit) exitAction = QtGui.QAction('Exit', self) exitAction.setShortcut('Ctrl+Q') exitAction.setStatusTip('Exit application') exitAction.triggered.connect(self.close) self.statusBar() menubar = self.menuBar() fileMenu = menubar.addMenu('&File') fileMenu.addAction(exitAction) toolbar = self.addToolBar('Exit') toolbar.addAction(exitAction) self.setGeometry(300, 300, 350, 250) self.setWindowTitle('Main window') self.show() def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == '__main__': main()
相关文章推荐
- 制作类似分享插件功能
- WINDOWS 64位机ODBC的数据源DSN添加和移除问题
- Shell编程基础
- Windows Server 2012 R2 WSUS
- Kendo UI常用示例汇总(七)
- ComponentName(String pkg, String cls)
- android frameworks学习
- SQLServer找出执行慢的SQL语句
- 计算机程序的思维逻辑 (9) - 条件执行的本质
- 使用JavaScript实现动态创建含合并单元格(行)的表单
- bootstrap响应式设计简单实践。
- java留言管理系统中模糊查询实例分享
- yii2框架安装
- Zookeeper开源客户端框架Curator简介
- 鼠标选不中脚注,但是又想修改脚注
- iOS 键盘样式UIKeyboardType
- IOS 文件目录
- typedefef函数指针的用法(转载)
- springmvc中自定义日期转换器及其jsp页面日期显示的一个常用标签
- 数据存储之偏好设置