国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

python GUI庫(kù)圖形界面開發(fā)之PyQt5菜單欄控件QMenuBar的詳細(xì)使用方法與實(shí)例

瀏覽:97日期:2022-08-05 14:47:41
PyQt5菜單欄控件QMenuBar介紹

QMenuBar在QMainWindow對(duì)象的標(biāo)題欄下方,水平的QMenuBar被保留顯示QMenu對(duì)象

QMenuBar類提供了一個(gè)可以包含一個(gè)或多個(gè)QAction對(duì)象或 級(jí)聯(lián)的QMenu對(duì)象,要?jiǎng)?chuàng)建一個(gè)彈出菜單,Pyqt提供了createPopupMenu()函數(shù),menuBar()函數(shù)用于返回主窗口的QMenuBar對(duì)象:addMenu()函數(shù)可以將菜單添加到菜單欄中,通過addAction()函數(shù)可以在菜單中進(jìn)行添加操作

設(shè)計(jì)菜單系統(tǒng)時(shí)常用的一些重要方法 方法 描述 menuBar() 返回主窗口的QMenuBar對(duì)象 addMenu() 在菜單欄中添加一個(gè)新的QMenu對(duì)象 addAction() 向QMenu小控件中添加一個(gè)操作按鈕,其中包含文本或圖標(biāo) setEnabled() 將操作按鈕設(shè)置為啟用/禁用 addSeperator() 在菜單中添加一條分割線 clear() 刪除菜單欄的內(nèi)容 setShortcut() 將快捷鍵關(guān)聯(lián)到操作按鈕 setText() 設(shè)置菜單項(xiàng)的文本 setTitle() 設(shè)置QMenu小控件的標(biāo)題 text() 返回與QACtion對(duì)象關(guān)聯(lián)的文本 title() 返回QMenu小控件的標(biāo)題

單擊任何QAction按鈕時(shí),QMenu對(duì)象都會(huì)發(fā)射triggered信號(hào)

QMenuBar的使用實(shí)例

import sysfrom PyQt5.QtGui import *from PyQt5.QtWidgets import *from PyQt5.QtCore import *class MenuDemo(QMainWindow): def __init__(self,parent=None): super(MenuDemo, self).__init__(parent) #水平布局 layout=QHBoxLayout() #實(shí)例化主窗口的QMenuBar對(duì)象 bar=self.menuBar() #向菜單欄中添加新的QMenu對(duì)象,父菜單 file=bar.addMenu(’File’) #向QMenu小控件中添加按鈕,子菜單 file.addAction(’New’) #定義響應(yīng)小控件按鈕,并設(shè)置快捷鍵關(guān)聯(lián)到操作按鈕,添加到父菜單下 save=QAction(’Save’,self) save.setShortcut(’Ctrl+S’) file.addAction(save) #創(chuàng)建新的子菜單項(xiàng),并添加孫菜單 edit=file.addMenu(’Edit’) edit.addAction(’Copy’) edit.addAction(’Paste’) #添加父菜單下 quit=QAction(’Quit’,self) file.addAction(quit) #單擊任何Qmenu對(duì)象,都會(huì)發(fā)射信號(hào),綁定槽函數(shù) file.triggered[QAction].connect(self.processtrigger) #設(shè)置布局及標(biāo)題 self.setLayout(layout) self.setWindowTitle(’menu例子’) def processtrigger(self,q): #輸出那個(gè)Qmenu對(duì)象被點(diǎn)擊 print(q.text()+’is triggeres’)if __name__ == ’__main__’: app=QApplication(sys.argv) demo=MenuDemo() demo.show() sys.exit(app.exec_())

運(yùn)行程序,顯示效果如圖

python GUI庫(kù)圖形界面開發(fā)之PyQt5菜單欄控件QMenuBar的詳細(xì)使用方法與實(shí)例

QMenuBar代碼分析

在這個(gè)例子中,頂層窗口必須是QMainWindow對(duì)象,才可以引用QMenuBar對(duì)象

通過addMenu()方法將‘File’菜單添加到菜單欄

bar=self.menuBar() #向菜單欄中添加新的QMenu對(duì)象,父菜單 file=bar.addMenu(’File’)

菜單欄中的操作按鈕可以是字符串或QAction對(duì)象

file.addAction(’New’) #定義響應(yīng)小控件按鈕,并設(shè)置快捷鍵關(guān)聯(lián)到操作按鈕,添加到父菜單下 save=QAction(’Save’,self) save.setShortcut(’Ctrl+S’) file.addAction(save)

將子菜單添加到頂級(jí)菜單中

edit=file.addMenu(’Edit’) edit.addAction(’Copy’) edit.addAction(’Paste’)

菜單發(fā)射triggered信號(hào),將信號(hào)連接到槽函數(shù)processtrigger()該函數(shù)接受信號(hào)的QAction對(duì)象

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

本文詳細(xì)講解了PyQt5菜單欄控件QMenuBar的使用方法與實(shí)例,更多關(guān)于PyQt5菜單欄控件的使用知識(shí)請(qǐng)查看下面的相關(guān)鏈接

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 南陵县| 和硕县| 东阿县| 巢湖市| 杂多县| 沿河| 东乌珠穆沁旗| 神木县| 沛县| 呼伦贝尔市| 黑龙江省| 永德县| 天等县| 武鸣县| 绥江县| 东海县| 文安县| 图们市| 岳普湖县| 屯昌县| 西和县| 东源县| 准格尔旗| 江孜县| 天水市| 曲麻莱县| 海林市| 蚌埠市| 全州县| 平果县| 胶州市| 东方市| 邳州市| 焉耆| 三门峡市| 禄丰县| 定西市| 凉山| 双鸭山市| 科技| 宁海县|