pyqt5 -——菜单和工具栏

一. 状态栏

# -*- coding: utf-8 -*-# @Time    : 2018/12/22 12:37# @Author  : Bo# @Email   : [email protected]# @File    : demo3.py# @Software: PyCharmimport sysfrom PyQt5.QtWidgets import QMainWindow, QApplication

class Example(QMainWindow):

def __init__(self):        super().__init__()

self.initUI()

def initUI(self):

self.statusBar().showMessage(‘Ready‘)

self.setGeometry(300, 300, 250, 150)        self.setWindowTitle(‘Statusbar‘)        self.show()

if __name__ == ‘__main__‘:

app = QApplication(sys.argv)    ex = Example()    sys.exit(app.exec_())

状态栏是由QMainWindow创建的。

self.statusBar().showMessage(‘Ready‘)

调用QtGui.QMainWindow类的statusBar()方法,创建状态栏。第一次调用创建一个状态栏,返回一个状态栏对象。showMessage()方法在状态栏上显示一条信息。

二  菜单栏

import sysfrom PyQt5.QtWidgets import QAction,qApp,QApplication,QMainWindowfrom PyQt5.QtGui import QIcon

class Example(QMainWindow):

def __init__(self):        super().__init__()

self.initUI()

def initUI(self):

exitAct = QAction(QIcon(‘1.png‘),‘&Exit‘,self)        exitAct.setShortcut(‘Ctrl+Q‘)        exitAct.setStatusTip(‘Exit Application‘)        exitAct.triggered.connect(qApp.quit)

self.statusBar()

menubar = self.menuBar()        fileMenu = menubar.addMenu("&File")        fileMenu.addAction(exitAct)

self.setGeometry(300, 300, 250, 150)        self.setWindowTitle(‘simple menu‘)        self.show()

if __name__ == ‘__main__‘:

app = QApplication(sys.argv)    ex = Example()    sys.exit(app.exec_())

我们创建了只有一个命令的菜单栏,这个命令就是终止应用。同时也创建了一个状态栏。而且还能使用快捷键Ctrl+Q退出应用。

exitAct = QAction(QIcon(‘exit.png‘), ‘&Exit‘, self)
exitAct.setShortcut(‘Ctrl+Q‘)
exitAct.setStatusTip(‘Exit application‘)

QAction是菜单栏、工具栏或者快捷键的动作的组合。前面两行,我们创建了一个图标、一个exit的标签和一个快捷键组合,都执行了一个动作。第三行,创建了一个状态栏,当鼠标悬停在菜单栏的时候,能显示当前状态。

exitAct.triggered.connect(qApp.quit)

当执行这个指定的动作时,就触发了一个事件。这个事件跟QApplication的quit()行为相关联,所以这个动作就能终止这个应用。

menubar = self.menuBar()
fileMenu = menubar.addMenu(‘&File‘)
fileMenu.addAction(exitAct)

menuBar()创建菜单栏。这里创建了一个菜单栏,并在上面添加了一个file菜单,并关联了点击退出应用的事件。

三 .子菜单

import sysfrom PyQt5.QtWidgets import QAction, qApp, QApplication, QMainWindow, QMenufrom PyQt5.QtGui import QIcon

class Example(QMainWindow):

def __init__(self):        super().__init__()

self.initUI()

def initUI(self):

exitAct = QAction(QIcon(‘1.png‘),‘&Exit‘,self)        exitAct.setShortcut(‘Ctrl+Q‘) #快捷键        exitAct.setStatusTip(‘Exit Application‘)        exitAct.triggered.connect(qApp.quit) 

impMenu = QMenu("Import",self)         impAct = QAction("Import mail",self)        impMenu.addAction(impAct)

self.statusBar()

menubar = self.menuBar()        fileMenu = menubar.addMenu("&File")        fileMenu.addAction(exitAct)

newAct = QAction("new",self)        fileMenu.addAction(newAct)        fileMenu.addMenu(impMenu)

self.setGeometry(300, 300, 250, 150)        self.setWindowTitle(‘simple menu‘)        self.show()

if __name__ == ‘__main__‘:

app = QApplication(sys.argv)    ex = Example()    sys.exit(app.exec_())

这个例子里,有两个子菜单,一个在file菜单下面,一个在file的import下面。

impMenu = QMenu(‘Import‘, self)

使用QMenu创建一个新菜单。

impAct = QAction(‘Import mail‘, self)
impMenu.addAction(impAct)

使用addAction添加一个动作。

四  . 勾选菜单,右键菜单

五 . 工具栏

六 . 主窗口

import sysfrom PyQt5.QtWidgets import QAction, qApp, QApplication, QMainWindow, QMenu, QTextEditfrom PyQt5.QtGui import QIcon

class Example(QMainWindow):

def __init__(self):        super().__init__()

self.initUI()

def initUI(self):

textEdit = QTextEdit()        self.setCentralWidget(textEdit)

exitAct = QAction(QIcon(‘1.png‘),‘&Exit‘,self)        exitAct.setShortcut(‘Ctrl+Q‘) #快捷键        exitAct.setStatusTip(‘Exit Application‘)        exitAct.triggered.connect(qApp.quit)

impMenu = QMenu("Import",self)        impAct = QAction("Import mail",self)        impMenu.addAction(impAct)

self.statusBar()

menubar = self.menuBar()        fileMenu = menubar.addMenu("&File")        fileMenu.addAction(exitAct)

newAct = QAction("new",self)        fileMenu.addAction(newAct)        fileMenu.addMenu(impMenu)

toolbar = self.addToolBar(‘Exit‘)        toolbar.addAction(exitAct)        self.setGeometry(300, 300, 250, 150)        self.setWindowTitle(‘simple menu‘)        self.show()

if __name__ == ‘__main__‘:

app = QApplication(sys.argv)    ex = Example()    sys.exit(app.exec_())

原文地址:https://www.cnblogs.com/icat-510/p/10165963.html

时间: 2024-10-11 09:09:54

pyqt5 -——菜单和工具栏的相关文章

pyqt5——菜单和工具栏

菜单和工具栏 这个章节,我们会创建状态栏.菜单和工具栏.菜单是一组位于菜单栏的命令.工具栏是应用的一些常用工具按钮.状态栏显示一些状态信息,通常在应用的底部. 主窗口 QMainWindow提供了主窗口的功能,使用它能创建一些简单的状态栏.工具栏和菜单栏. 主窗口是下面这些窗口的合称,所以教程在最下方. 状态栏 状态栏是用来显示应用的状态信息的组件. #!/usr/bin/python3 # -*- coding: utf-8 -*- """ ZetCode PyQt5 tu

WinForm 多窗体、菜单和工具栏

今天,我首先先学习了一下在WinForm程序开发中常遇到的问题——多窗体程序运行问题. 在开发多窗体程序时,常会遇到以下四个方面的问题: 一.哪个是主窗体 问题:主窗体隐藏了,关闭其它窗体后,没有将主窗体显示/关闭,那么程序就关不上了. 当遇到这个问题时,我们通常的解决办法是:构造函数传值,将窗体传到另一个窗体中去,进行关闭. 二.窗体只能打开一个 创建一个全局的泛型集合,为了放置全部打开的窗体.在窗体打开之前,判断集合中是否有name一致的窗体,如果有就说明已经打开了,就不要再打开了. 问题:

多窗口切换传值,菜单,工具栏

在form1中打开form2:private void button1_Click(object sender, EventArgs e) { Form2 f2 = new Form2(); f2.Show(); this.Hide();//打开From2时,隐藏From1 }这样出现这样一个问题:在打开form2的时候form1隐藏了,也就无法再将form1关闭,会在后台一直运行.解决方案:构造函数传值,在关闭form2的时候也同时将form1关闭. Form1 F1 = null; publ

WinForm 菜单和工具栏

菜单和工具栏: 1.MenuStrip:顶部菜单 优先级最高,默认在最顶部 (1)分割线:a.打一个减号 “-”                   b.右键插入Separator (2)点击事件:每一项都可以当做按钮使用,可以设置点击事件 (3)快捷键:每一个项右键属性的最下面可以设置快捷键(ShortcutKeys)                  不管选项隐藏(visible-false)还是菜单隐藏,快捷键都管用 (4)快速建顶部菜单的方法:右击,选择插入标准项,基本的顶部菜单就可以了

MFC菜单、工具栏和状态栏

菜单:CMenu类 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 CMenu类的主要成员函数        BOOL LoadMenu(UINT nIDResource);        加载菜单资源,并将其附加到CMenu对象上.参数nIDResource指定了要

【2017-04-25】winform公共控件、菜单和工具栏、Tab和无边框窗体制作

一.公共控件 1. Button   按钮 + 布局 - AutoSize   按钮尺寸自动适应里面内容的长度 - Location    位置 - Margin       控件与控件外边距 - Size     当前尺寸 +行为 - Enabled     是否可用 - TabIndex     该控件对应的Tab键索引值 - TabStop      该控件对应的Tab键禁用时的索引值 - Visible     显示和隐藏 +外观 - BackColor    背景色 - Backgro

2017-4-25 公共控件属性 菜单和工具栏属性

(一)公共控件属性 1.Button按钮 AutoSize  内容自适应大小 Location  控件左上角相对于容器左上角的位置 Margin  控件与控件的外边距 Enabled  控件是否可以选中 TabIndex   布局用 TabStop 布局用 Visible    是否显示 FlatAppearance  FlatStyle  2个属性配合使用,可以控制按钮的边框样式等 2.CheckBox checked  是否被选中 Appearance 外观样式 CheckAlign   复

0922 多窗体,菜单和工具栏

多窗体 这里所谓的多窗体就是我们所说的打开一个窗体后,从这个窗体打开另一个窗体,打开的窗体只能打开一个,当再次点击时会把焦点移入打开的新窗体 1.   首先我们先定义一个泛型集合来存放打开的窗体,来判断是否打开过这个窗体 List<Form> Flist = new List<Form>(); 2.在主窗体的按钮上写方法 bool has = false;//用来判断是否打开过第二个窗体 Form2 f2 = new Form2(this);//将这个窗体传入第二个窗体实现第二窗体

Windows系统:桌面,开始菜单和工具栏都不见了

win7桌面,开始菜单和工具栏都不见了 ctrl+alt+del 打开任务管理器 然后文件-运行 ---  输入框里输入  explorer.exe 其实就是打开系统文件夹下的(大约是‘windows’文件夹里的)explorer.exe 然后成功... ¥#科普时间¥$: (经百度科普到) explorer是资源管理器 explorer.exe是Windows程序管理器或者文件资源管理器,它用于管理Windows图形壳,包括桌面和文件管理.删除该程序会导致Windows图形界面无法使用. --