91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • python GUI庫圖形界面開發之PyQt5菜單欄控件QMenuBar的詳細使用方法與實例

python GUI庫圖形界面開發之PyQt5菜單欄控件QMenuBar的詳細使用方法與實例

發布時間:2020-08-20 19:58:47 來源:腳本之家 閱讀:378 作者:jia666666 欄目:開發技術

PyQt5菜單欄控件QMenuBar介紹

QMenuBar在QMainWindow對象的標題欄下方,水平的QMenuBar被保留顯示QMenu對象

QMenuBar類提供了一個可以包含一個或多個QAction對象或 級聯的QMenu對象,要創建一個彈出菜單,Pyqt提供了createPopupMenu()函數,menuBar()函數用于返回主窗口的QMenuBar對象:addMenu()函數可以將菜單添加到菜單欄中,通過addAction()函數可以在菜單中進行添加操作

設計菜單系統時常用的一些重要方法

方法 描述
menuBar() 返回主窗口的QMenuBar對象
addMenu() 在菜單欄中添加一個新的QMenu對象
addAction() 向QMenu小控件中添加一個操作按鈕,其中包含文本或圖標
setEnabled() 將操作按鈕設置為啟用/禁用
addSeperator() 在菜單中添加一條分割線
clear() 刪除菜單欄的內容
setShortcut() 將快捷鍵關聯到操作按鈕
setText() 設置菜單項的文本
setTitle() 設置QMenu小控件的標題
text() 返回與QACtion對象關聯的文本
title() 返回QMenu小控件的標題

單擊任何QAction按鈕時,QMenu對象都會發射triggered信號

QMenuBar的使用實例

import sys
from 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()

    #實例化主窗口的QMenuBar對象
    bar=self.menuBar()
    #向菜單欄中添加新的QMenu對象,父菜單
    file=bar.addMenu('File')
    #向QMenu小控件中添加按鈕,子菜單
    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)

    #單擊任何Qmenu對象,都會發射信號,綁定槽函數
    file.triggered[QAction].connect(self.processtrigger)

    #設置布局及標題
    self.setLayout(layout)
    self.setWindowTitle('menu例子')

  def processtrigger(self,q):
    #輸出那個Qmenu對象被點擊
    print(q.text()+'is triggeres')

if __name__ == '__main__':
  app=QApplication(sys.argv)
  demo=MenuDemo()
  demo.show()
  sys.exit(app.exec_())

運行程序,顯示效果如圖

python GUI庫圖形界面開發之PyQt5菜單欄控件QMenuBar的詳細使用方法與實例

QMenuBar代碼分析

在這個例子中,頂層窗口必須是QMainWindow對象,才可以引用QMenuBar對象

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

    bar=self.menuBar()

    #向菜單欄中添加新的QMenu對象,父菜單

    file=bar.addMenu('File')

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

    file.addAction('New')
    #定義響應小控件按鈕,并設置快捷鍵關聯到操作按鈕,添加到父菜單下

    save=QAction('Save',self)
    save.setShortcut('Ctrl+S')
    file.addAction(save)

將子菜單添加到頂級菜單中

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

菜單發射triggered信號,將信號連接到槽函數processtrigger()該函數接受信號的QAction對象

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

本文詳細講解了PyQt5菜單欄控件QMenuBar的使用方法與實例,更多關于PyQt5菜單欄控件的使用知識請查看下面的相關鏈接

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

莫力| 安陆市| 定州市| 阿拉尔市| 澳门| 扶余县| 醴陵市| 东安县| 高邮市| 赤峰市| 临夏市| 南岸区| 瑞昌市| 墨竹工卡县| 如东县| 西昌市| 峨眉山市| 霍林郭勒市| 皋兰县| 恩施市| 搜索| 监利县| 天峻县| 鄂尔多斯市| 浠水县| 蛟河市| 闸北区| 龙海市| 沁阳市| 桓台县| 十堰市| 饶河县| 宁国市| 杭锦旗| 青神县| 临澧县| 辽阳市| 内丘县| 保山市| 梅州市| 巴林左旗|