当前位置: 首页 > news >正文

伍佰亿是什么网站内蒙古建设工程造价信息网官网

伍佰亿是什么网站,内蒙古建设工程造价信息网官网,手机怎么做优惠券网站,东莞教育平台网站建设在 PySide中#xff0c;contextMenuEvent() 是 QWidget 类#xff08;以及继承自它的所有子类#xff09;的一个事件处理方法#xff0c;主要用于处理上下文菜单事件#xff0c;也就是当用户在控件上右键点击时触发的事件。 • 通过重新定义contextMenuEvent()来实现自定…        在 PySide中contextMenuEvent() 是 QWidget 类以及继承自它的所有子类的一个事件处理方法主要用于处理上下文菜单事件也就是当用户在控件上右键点击时触发的事件。 • 通过重新定义contextMenuEvent()来实现自定义的鼠标右键菜单 from PySide6.QtGui import QAction from PySide6.QtWidgets import QApplication, QWidget, QMenu from PySide6.QtCore import Qtclass MyWidget(QWidget):def __init__(self):super().__init__()# 创建一个菜单self.menu QMenu(self)# 创建菜单项action1 QAction(菜单项1, self)action2 QAction(菜单项2, self)# 将菜单项添加到菜单中self.menu.addAction(action1)self.menu.addAction(action2)# 连接信号和槽定义点击菜单项后的行为action1.triggered.connect(self.on_action1_triggered)action2.triggered.connect(self.on_action2_triggered)def contextMenuEvent(self, event):# 在鼠标点击的位置显示菜单self.menu.exec(event.globalPos())def on_action1_triggered(self):print(菜单项1被触发)def on_action2_triggered(self):print(菜单项2被触发)# 应用程序执行部分 if __name__ __main__:app QApplication([])widget MyWidget()widget.show()app.exec() • 将其定义在子部件内 from PySide6.QtGui import QAction from PySide6.QtWidgets import QApplication, QWidget, QMenu, QPushButtonclass MyWidget(QWidget):def __init__(self):super().__init__()self.setupUi()def setupUi(self):self.button MyButton(self)class MyButton(QPushButton):def __init__(self, parentNone):super().__init__(parent)self.setText(右键点击我)# 创建一个菜单self.menu QMenu(self)# 创建菜单项action1 QAction(菜单项1, self)action2 QAction(菜单项2, self)# 将菜单项添加到菜单中self.menu.addAction(action1)self.menu.addAction(action2)# 连接信号和槽定义点击菜单项后的行为action1.triggered.connect(self.on_action1_triggered)action2.triggered.connect(self.on_action2_triggered)def contextMenuEvent(self, event):# 在鼠标点击的位置显示菜单self.menu.exec(event.globalPos())def on_action1_triggered(self):print(菜单项1被触发)def on_action2_triggered(self):print(菜单项2被触发)# 应用程序执行部分 if __name__ __main__:app QApplication([])widget MyWidget()widget.show()app.exec() 上述代码只有在按钮上有鼠标右键菜单。  • 获取系统默认的右键菜单并添加新的菜单项  import sys from PySide6.QtGui import QAction from PySide6.QtWidgets import QApplication, QLineEdit, QMenuclass MyLineEdit(QLineEdit):def __init__(self, parentNone):super().__init__(parent)self.setText(右键点击我)self.menu QMenu(self) # 创建一个菜单self.addMenus() # 添加菜单的菜单项def addMenus(self):# 获取系统默认的上下文菜单动作default_actions self.createStandardContextMenu().actions()# 将默认动作添加到新菜单中for action in default_actions:print(action.text())self.menu.addAction(action)# 将新的菜单项添加到新菜单中self.action1 QAction(菜单项1, self)self.action2 QAction(菜单项2, self)self.menu.addSeparator() # 创建分割线# 添加自定义菜单项self.menu.addAction(self.action1)self.menu.addAction(self.action2)# 连接信号和槽函数self.action1.triggered.connect(self.on_action1_triggered)self.action2.triggered.connect(self.on_action2_triggered)# 重写上下文菜单事件def contextMenuEvent(self, event):# 显示菜单self.menu.exec(event.globalPos())def on_action1_triggered(self):print(菜单项1被点击)def on_action2_triggered(self):print(菜单项2被点击)if __name__ __main__:app QApplication(sys.argv)line_edit MyLineEdit()line_edit.show()sys.exit(app.exec()) 上面的代码读取了系统内置的默认右键菜单并增加了两个自定义的菜单项构成了一个新的菜单。重写了contextMenuEvent()使其显示新的菜单。 • 为新菜单设置快捷方式 import sys from PySide6.QtGui import QAction from PySide6.QtWidgets import QApplication, QLineEdit, QMenuclass MyLineEdit(QLineEdit):def __init__(self, parentNone):super().__init__(parent)self.setText(右键点击我)self.menu QMenu(self) # 创建一个菜单self.addMenus() # 添加菜单的菜单项def addMenus(self):# 获取系统默认的上下文菜单动作default_actions self.createStandardContextMenu().actions()# 将默认动作添加到新菜单中for action in default_actions:self.menu.addAction(action)# 将新的菜单项添加到新菜单中self.action1 QAction(菜单项1, self) # 创建菜单项self.action1.setShortcut(CtrlB) # 设置快捷键self.action2 QAction(菜单项2, self)self.menu.addSeparator() # 创建分割线# 添加自定义菜单项self.addAction(self.action1) # 将菜单项添加到部件的主体中用以生效快捷方式self.menu.addAction(self.action1) # 将菜单项添加到菜单中self.menu.addAction(self.action2)# 连接信号和槽函数self.action1.triggered.connect(self.on_action1_triggered)self.action2.triggered.connect(self.on_action2_triggered)# 重写上下文菜单事件def contextMenuEvent(self, event):# 显示菜单self.menu.exec(event.globalPos())def on_action1_triggered(self):print(菜单项1被点击)def on_action2_triggered(self):print(菜单项2被点击)if __name__ __main__:app QApplication(sys.argv)line_edit MyLineEdit()line_edit.show()sys.exit(app.exec()) 这里注意只有执行了self.addAction(self.action1)将菜单项添加到部件的主体中才能生效快捷方式。而self.menu.addAction(self.action1)只是将菜单项添加到菜单中并未在部件中注册菜单项。 除了重新定义contextMenuEvent()还有另一种更为灵活的方法 • 使用策略设置setContextMenuPolicy()的方法来定义菜单 PyQTPySide的上下文菜单策略设置setContextMenuPolicy()-CSDN博客
http://www.hkea.cn/news/14566900/

相关文章:

  • 兰州新区农投建设网站资源软件库
  • 外贸网站建设厦门南沙做网站
  • 甘肃 网站建设 开发 app投票网站源码php
  • 陕西网站制作qq群石佛营网站建设
  • seo优化网站技术排名百度推广企业网站的基本功能有哪些
  • 网站建设思想重视不够网站分几种类型
  • 开发软件网站建设asp网站开发实例pdf
  • 网站建设的广告语html网页爱心代码
  • 怎样看网站的浏览量eclipse 网站开发源码
  • 展示型网站和官网wordpress自定义统计
  • 网站横幅代码建设企业网站怎么样
  • 网站名称注册保护嵌入式开发手软件
  • python 做网站很快吗昆山市建设监察大队官方网站
  • 长治网站建设电话频繁从一个网站链接到另一个网站会影响百度收录么
  • 建站之星怎么免费做网站百度一下百度网站
  • 青岛网站建设公司怎么样wordpress 会员投搞
  • 做视频用的网站wordpress添加支付宝打赏
  • 做自己的网站挣钱甘肃多元网络
  • 网站功能结构图 怎么做泉州网站建设方案维护
  • dota2海涛做的网站苏州外贸营销网站建设
  • 济宁医院网站建设免费搭建博客网站
  • 知名企业网站截图智慧医疗软件公司排名
  • 小说网站源码软件商店怎么下载
  • 网站吸引力企业网站自助建设
  • 中国建设招标信息网站电子购物网站开发公司
  • 用什么网站推广中讯科技-运城网站建设
  • 做网站好一点的公司高端服装产品网站建设
  • ui设计简介网站优化推广软件
  • 天空人体网站怎么做机场建设网站
  • 石家庄企业做网站手机金融界网站