日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

pyqt5讲解6:菜单栏,工具栏,状态栏

發(fā)布時(shí)間:2024/9/30 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pyqt5讲解6:菜单栏,工具栏,状态栏 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

菜單欄QMenuBar

方法描述
menuBar()用于返回主窗口的QMenuBar對(duì)象
addMenu()將菜單添加到菜單欄;
addAction()在菜單中進(jìn)行添加某些操作;
setEnabled將操作按鈕設(shè)為禁用或者啟用
addSeperator在菜單中添加一條分界線
clear()刪除菜單,菜單欄的內(nèi)容
setShortcut()設(shè)置快捷鍵
setText()設(shè)置菜單欄的文本
setTitle()設(shè)置Qmenu小控件的標(biāo)題
text()返回QAction對(duì)象關(guān)聯(lián)的文本
title()返回Qmenu對(duì)象的標(biāo)題
# -*- coding: utf-8 -*-'''【簡(jiǎn)介】PyQt5中 Qmenu 例子'''import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import *class MenuDemo(QMainWindow):def __init__(self, parent=None):super(MenuDemo, self).__init__(parent)layout = QHBoxLayout()bar = self.menuBar()file = bar.addMenu("File")file.addAction("New")save = QAction("Save",self)save.setShortcut("Ctrl+S")file.addAction(save)edit = file.addMenu("Edit")edit.addAction("copy")edit.addAction("paste")quit = QAction("Quit",self)file.addAction(quit)file.triggered[QAction].connect(self.processtrigger)quit.triggered.connect(self.process)self.setLayout(layout)self.setWindowTitle("menu 例子")self.resize(350,300)def processtrigger(self,q):print(q.text()+" is triggered")if q.text()=='Save':print('save按下啦')def process(self):print('quit被按下啦')if __name__ == '__main__':app = QApplication(sys.argv)demo = MenuDemo()demo.show()sys.exit(app.exec_())

信號(hào)綁定兩種方式:
triggered:信號(hào)發(fā)射

file.triggered[QAction].connect(self.processtrigger) quit.triggered.connect(self.process)

工具欄QToolBar

方法描述
addAction()添加具有文本或圖標(biāo)的按鈕
addSeperator()分組顯示工具按鈕
addWight()添加工具欄按鈕以外的按鈕
addToolbar()使用Qmainwindow類(lèi)的方法添加一個(gè)新的工具欄
setMovable()設(shè)置工具欄變得可移動(dòng)
setOrientation()工具欄的方向 Qt.Horizontal或者Qt.vertical
import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import *class ToolBarDemo(QMainWindow):def __init__(self, parent=None):super(ToolBarDemo, self).__init__(parent)self.setWindowTitle("toolbar 例子")self.resize(300, 200)layout = QVBoxLayout()tb = self.addToolBar("File")new = QAction(QIcon("limi.jpg"), "new", self)tb.addAction(new)open = QAction(QIcon("41.png"), "open", self)open.triggered.connect(self.open)tb.addAction(open)save = QAction(QIcon("3.jpg"), "save", self)tb.addAction(save)tb.actionTriggered[QAction].connect(self.toolbtnpressed)self.setLayout(layout)def toolbtnpressed(self, a):print("pressed tool button is", a.text())def open(self):print('打開(kāi)啦')if __name__ == '__main__':app = QApplication(sys.argv)demo = ToolBarDemo()demo.show()sys.exit(app.exec_())

信號(hào)綁定發(fā)射兩種方法:

open.triggered.connect(self.open)tb.actionTriggered[QAction].connect(self.toolbtnpressed)

狀態(tài)欄QStatusBar

方法描述
addWight()在狀態(tài)欄中添加指定的窗口小控件對(duì)象
addPermanentWidget在狀態(tài)欄中永久添加給定的小窗口對(duì)象
showMessage()在狀態(tài)欄中顯示一條臨時(shí)信息指定時(shí)間間隔
clearMessage()刪除正在顯示的臨時(shí)信息
removeWidget()刪除狀態(tài)欄中指定的小控件
import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import *class StatusDemo(QMainWindow):def __init__(self, parent=None):super(StatusDemo, self).__init__(parent)bar = self.menuBar()file = bar.addMenu("File")file.addAction("show")file.triggered[QAction].connect(self.processTrigger)self.setCentralWidget(QTextEdit())self.statusBar= QStatusBar() self.setWindowTitle("QStatusBar 例子")self.setStatusBar(self.statusBar)def processTrigger(self,q):if (q.text()=="show"):self.statusBar.showMessage(q.text()+" 菜單選項(xiàng)被點(diǎn)擊了",5000)if __name__ == '__main__':app = QApplication(sys.argv)demo = StatusDemo()demo.show()sys.exit(app.exec_())

本例子指定啦一個(gè)菜單對(duì)象和一個(gè)文本框

和狀態(tài)欄有關(guān)的

self.statusBar= QStatusBar() self.setStatusBar(self.statusBar)def processTrigger(self,q):if (q.text()=="show"):self.statusBar.showMessage(q.text()+" 菜單選項(xiàng)被點(diǎn)擊了",5000)

狀態(tài)信息很快消失


電氣專(zhuān)業(yè)的計(jì)算機(jī)萌新,寫(xiě)博文不容易。如果你覺(jué)得本文對(duì)你有用,請(qǐng)點(diǎn)個(gè)贊支持下,謝謝。

總結(jié)

以上是生活随笔為你收集整理的pyqt5讲解6:菜单栏,工具栏,状态栏的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。