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 ...
随机推荐
- sql server数据库连接问题处理
下面请一字一句地看,一遍就设置成功,比你设置几十遍失败,费时会少得多. 首先,在连接数据库之前必须保证SQL Server 2012是采用SQL Server身份验证方式而不是windows身份验证方 ...
- web 乱码摘抄
JavaWeb--中文乱码小结 JavaWeb--中文乱码小结 0.纯粹html乱码: 换个editor吧(有时候notepad都比sublime_text好用),最好是在<head>&l ...
- C++Primer 一
1.vertor和数组的区别: 数组的长度固定.而且程序是无法知道一个给定数组的长度,数组没有获取器容量大小的size操作,也不提供puch_back操作在其中自动添加元素 2.数组定义中的类型可以示 ...
- EL和JSTL专题
EL简介 EL全名为Expression Language,它原本是JSTL 1.0为方便存取数据所自定义的语言.当时只能在JSTL标签中使用,如下: <c:out value="${ ...
- Identify Memory Leaks in Visual CPP Applications —— VLD内存泄漏检测工具
原文地址:http://www.codeproject.com/Articles/1045847/Identify-Memory-Leaks-in-Visual-CPP-Applications 基于 ...
- String类常用方法小节
(1)String.equals() 返回值是boolean类型 equals(Object anObject) 将此字符串与指定的对象比较. (2)length() 返回值是in ...
- JavaScript onblur 和 onkeyup事件用法
1.onblur表示失去焦点的时候被调用: 2.onkeyup表示键盘每输入完一个字符之后发生.简单来讲,就是键盘上的按键被放开的时候触发. 例子: <!DOCTYPE HTML PUBLIC ...
- c++ boost (递归)遍历目录
c++ 终于有办法跨平台访问文件系统了,虽然还是要借助boost.不多说,上代码 /** visitdir.cpp **/#include <iostream> #include < ...
- ubuntu 下更新PHP版本 ZT
sudo add-apt-repository ppa:ondrej/php5 如果报错 add-apt-repository: command not found add-apt-repositor ...
- LayaAir引擎——(二)
LayaAir引擎 -> 工具 -> 图集打包例子