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 ...
随机推荐
- 火狐和IE浏览器的兼容问题汇总
1.window.event code=(navigator.appName="Netscape")?event.which:event.keycode; 2.event.x mx ...
- web 页面上纯js实现按钮倒计数功能
需求构思:本功能想实现的是,一个按钮在页面载入就显示提醒续费,,,倒数60秒后,完成提醒功能,可以按另外一个页面跳转到主页. 参考网上的大神,实现如下:Button2倒数,Button3跳转,在页面上 ...
- SharePoint Site "Language Settings"功能与CSOM的对应
博客地址:http://blog.csdn.net/FoxDave SharePoint网站中的语言设置:"Language Settings",可以用CSOM通过Site的一些 ...
- 在win7环境下安装python2.6.6
Python2.x与3.x语法并不相同,这里装的是2.6.6的版本. 1.下载Python2.6.6: https://www.python.org/downloads/ 根据自身计算机的特点选择Py ...
- 如何用极路由+OpenWrt+SDR电视棒搭建SDR服务器
0×00 前言 近期因为有个从异地捕获无线信号的需求,便尝试着用OpenWrt+公网IP搭建了一台SDR服务器.如果有小伙伴嫌SDR硬件天线看起来太乱.或者电脑没有足够的USB接口也可在局域网搭建SD ...
- BZOJ 2002 && BZOJ 2409 LCT && BZOJ 3282 初步练习
#include <cstdio> ; inline void Get_Int(int & x) { ; ') ch=getchar(); +ch-'; ch=getchar(); ...
- 如何理解meta标签
相信大家对meta标签都不陌生,但是打开某些网页源代码看到一堆的meta难免一脸蒙逼.废话少说,请大家更随我一起探索meta标签都有哪些属性以及作用. W3C给meta标签的定义是:<meta& ...
- iOS开发 首次启动显示用户引导,第二次启动直接进入App,UIScrollView,UIPageControl,NSUserDefaults
首先创建一个引导图的控制器类 UserGuideViewController.h和UserGuideViewController.m #import <UIKit/UIKit.h> #im ...
- PLS-00306错误
ORA-06550: line 1, column 7:PLS-00306: wrong number or types of arguments in call to 'P'ORA-06550: l ...
- Java高级规范之二
二十一.提交java代码前应该检查是否有没用的语句,如:System.out.println(); jsp页面上面是否有alert调试信息 不规范示例:暂无 规范实例:暂无 解析:因为如果保留了有可能 ...