pyqt按钮怎么添加右键菜单?
利用 Qt.CustomContextMenu 来创建右键菜单方法:
1、QWidget 和它的子类 contextMenuPolicy 的默认值是 Qt.DefaultContextMenu 的, 所以需要通过 setContextMenuPolicy(QtCore.Qt.CustomContextMenu) 重新来设置他的值;
2、在Qt设计师中, 可以直接修改 contextMenuPolicy 的值为 CustomContextMenu 并且写入到UI文件中,用Qt设计师可以不用 setContextMenuPolicy 方法来设置。
3、CustomContextMenu 它所发出的是一个 customContextMenuRequested 信号 (signal) 如下: void customContextMenuRequested (const QPoint&) 这个信号是QWidget唯一与右键菜单有关的信号(也是自有的唯一信号), 同时也是很容易被忽略的信号(signal) 注: 文档中QWidget方法和属性巨量多, 就可以轻松自定义想要的右键菜单了,手编写槽(slot)。 def myListWidgetContext(self, point): popMenu = QtGui.QMenu() popMenu.addAction(QtGui.QAction(u'添加', self)) popMenu.addAction(QtGui.QAction(u'删除', self)) popMenu.addAction(QtGui.QAction(u'修改', self)) popMenu.exec_(QtGui.QCursor.pos())
4、接着就是连接槽。
5、添加成功。
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有