pyside 添加菜单栏,窗口状态栏,工具栏
这三个放到一起,个人认为比较有可比性。
另外该写的解释我都记到注释里面了
话不多说,show me the code
菜单栏,
# ubuntu16.04触发关联事件不成功,应该是ubantu的全局窗口模式的问题,其他环境运行正常。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date : 2016-06-02 03:25:37
# @Author : Nevermoreluo (nevermoreluo@gmail.com)
'''
菜单栏文件
windows下顺利执行
ubuntu下不显示状态栏信息 '''
import sys
from PySide import QtGui class Pyside_menubar(QtGui.QMainWindow): def __init__(self):
super(Pyside_menubar, self).__init__() self.initUI() def initUI(self): self.statusBar()
self.setFocus()
# 建立一个动作&提供了内置ALT快捷键
exitAction = QtGui.QAction('&Exit', self)
# 设置快捷键Ctrl+Q
exitAction.setShortcut('Ctrl+Q')
# 在ubuntu下未能显示状态栏提示
exitAction.setStatusTip('Exit application')
# 建立触发机制,self.close退出窗口
exitAction.triggered.connect(self.close) # 建立一个菜单栏
menubar = self.menuBar()
# 建立一个菜单栏按钮 &提供内置快捷键
fileMenu = menubar.addMenu('&File')
# 为菜单栏内 file按钮添加,建立的exitAction事件
fileMenu.addAction(exitAction) self.setGeometry(300, 300, 250, 150)
self.setWindowTitle('Menubar')
self.show() def main(): app = QtGui.QApplication(sys.argv)
ex = Pyside_menubar()
sys.exit(app.exec_()) if __name__ == '__main__':
main()
工具栏
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date : 2016-06-02 04:13:15
# @Author : Nevermoreluo (nevermoreluo@gmail.com)
'''
工具栏事件 QtGui.QAction建立一个事件 .triggered.connect关联触发函数
self.addToolBar('name').addAction( )建立工具栏,并为工具栏添加事件
''' import sys
from PySide import QtGui class Pyside_toolbar(QtGui.QMainWindow): def __init__(self):
super(Pyside_toolbar, self).__init__() self.initUI() def initUI(self):
# QtGui.QAction建立一个事件动作
# 用QtGui.QIcon做一个图标,
exitAction = QtGui.QAction(QtGui.QIcon('screenshot.jpg'), 'Exit', self)
# 建立一个关联快捷键
exitAction.setShortcut('Ctrl+Q')
# 关联一个触发函数self.close
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 = Pyside_toolbar()
sys.exit(app.exec_()) if __name__ == '__main__':
main()
状态栏
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date : 2016-06-01 21:20:02
# @Author : Nevermoreluo (nevermoreluo@gmail.com) '''
simple ex:
QtGui.QMainWindow.statusBar().showMessage('')
''' import sys
from PySide import QtGui class Pyside_statusbar(QtGui.QMainWindow): def __init__(self):
super(Pyside_statusbar, self).__init__() self.initUI() def initUI(self):
# 创建一个状态栏,并写入ready
self.statusBar().showMessage('Ready')
# 设置窗口位置大小
self.setGeometry(300, 300, 250, 150)
self.setWindowTitle('Statusbar')
self.show() def main(): app = QtGui.QApplication(sys.argv)
ex = Pyside_statusbar()
sys.exit(app.exec_()) if __name__ == '__main__':
main()
pyside 添加菜单栏,窗口状态栏,工具栏的更多相关文章
- VSTO Word2003 添加菜单栏, 添加工具栏
直接上代码了: Microsoft.Office.Core.CommandBar menuBar; CommandBarButton ccbtn = null; CommandBar ...
- MFC_2.8 使用状态栏工具栏
使用状态栏工具栏 1.资源-添加-TOOLBAR 画图标.画了一个,第二个会出来. 2.头文件添加成员 CToolBar m_ToolBar; CStatusBar m_StatusBar; 3.初始 ...
- 在C#中使用属性控件添加属性窗口
转自原文 在C#中使用属性控件添加属性窗口 第一步,创建在应用程序中将要展现的字段属性为public公有属性.其中,所有的属性必须有get和set的方法(如果不设置get方法,则要显示的属性不会显示在 ...
- Ext.grid.EditorGridPanel点击单元格添加菜单栏
1.定义菜单栏需要的全局变量 var khbm; var type; 2.新建一个菜单栏 var smenu = new Ext.menu.Menu({ id:"sMenu", i ...
- 【MFC - 菜单】在对话框程序中添加菜单栏(CMenu)(转)
原文转自 http://lishiqiang1988.blog.163.com/blog/static/41147912201382104631547/ VS2010的MFC对话框程序中添加菜单栏的过 ...
- 在MFC中添加OpenGL窗口
虽然MFC已经落伍好多年,而且用来做界面非常的不好用...但是我既不会C#也不会QT,又需要使用OpenGL,就只能将就用了... 一.首先介绍Windows图像程序设计中几个重要的概念: G ...
- 2019-2-3-VisualStudio-扩展开发-添加输出窗口
title author date CreateTime categories VisualStudio 扩展开发 添加输出窗口 lindexi 2019-02-03 11:41:40 +0800 2 ...
- C#Windows窗体界面设计_05_添加菜单栏 工具栏 状态栏 按钮
- wx工具栏,菜单栏,状态栏
#!/usr/bin/env python # -*- coding: utf- -*- import wx import wx.py.images class ToolbarFrame(wx.Fra ...
随机推荐
- father of the archangel of death"?
e wields an axe, a sword and a machine gun and his battlefield pranks have become as legendary as hi ...
- MySQL版本升级之5.6到5.7
两种升级方式 In-Place Upgrade: Involves shutting down the old MySQL version, replacing the old MySQL binar ...
- Outlook查找未读邮件
1.查找新邮件的未读邮件,可以在下图中查找 2.恢复已删除邮件,如果邮件是未读邮件,在上图中是查找不到,只能通过视图去查找 步骤2内容摘自百度
- 为什么 input 元素能用 width 属性
前几天在是写网页的时候发现input可以设置宽高,很疑惑,上网查了之后发现: 简单的认为 input 就是 inline 元素是片面的.元素默认以何种 display 属性值显示出来,这个其实更多的时 ...
- script标签里的defer属性
入职新公司,看代码的时候注意到有的script标签中有一个defer属性,查了一下.在这里分享出来. 需要注意的有三点,其中前两点是在错误中分辨出来的: 错误来源:http://www.w3schoo ...
- adb -s emulator-5554 install JDKCast-PAP.apk
multi-emulators direct to install app adb -s emulator-5554 install JDKCast-PAP.apk
- Gnu C的不同于标准C的语法
2. ,## 是与逗号合在一起用的, 表示后面有变量,则显示逗号,若后面无变量,则不显示逗号, 这种情况适用于用宏替换可变参数的函数,调用的时候可能传一个参数,或传两个参数, 这种打印语句在平台上,函 ...
- SE Homework 1 —An Error Impressed Me
在对两个对象进行比较.判断是否相等时,直接用 == 放在两个对象中间,例如下面的代码: Infor i1 = new Infor(111,"AA"); Infor i2 = new ...
- Win10/UWP开发—使用Cortana语音指令与App的前台交互
Win10开发中最具有系统特色的功能点绝对少不了集成Cortana语音指令,其实Cortana语音指令在以前的wp8/8.1时就已经存在了,发展到了Win10,Cortana最明显的进步就是开始支持调 ...
- Rally的敏捷小册子
来自为知笔记(Wiz)