Python PyQt QtoolbuttonPopup 模式

标签 python pyqt pyqt4 qtoolbar

根据我从互联网资源中了解到的信息,我可以使用Qtoolbuttonpopup模式在Qtoolbar上创建一个QActions弹出菜单。

因此,我创建了一个 QMenu 并使用 QMenu.addAction 添加了一些 QActions

之后我创建了一个QToolButton并将ToolButtonPopupMode设置为2。接下来使用 .setMenu(QMenu)

将我上面创建的 QMenu 设置为其菜单
    SettingMenu = QtGui.QMenu()
    SettingMenu.addAction(Action1)
    SettingMenu.addAction(Action2)

    SettingButton = QtGui.QToolButton()
    SettingButton.setIcon(QtGui.QIcon(QtGui.QPixmap(':/setting.png')))
    SettingButton.ToolButtonPopupMode(2)
    SettingButton.setMenu(SettingMenu)

从上面的代码中,我希望我的工具栏上有一个 Qtoolbutton ,当我单击它时,它应该弹出一个包含 2 个操作的菜单。但是当我运行代码时,我看到的只是工具栏上的一个 Qtoolbutton ,但是当我单击 Qtoolbutton 时,它不会创建任何弹出菜单。

我做错了吗?如何创建一个工具按钮,在用户单击时创建一个弹出操作菜单?

最佳答案

ToolButtonPopupModeenumerating type 。该枚举中的所有值都是该类型的实例。因为它继承自 int,所以用整数调用它会返回相同的整数。但是,您想要设置 popupMode属性,因此请使用 setPopupMode(2)

关于Python PyQt QtoolbuttonPopup 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19969295/

相关文章:

python - 在 QListWidgets 之间拖放自定义小部件项目

python - 如何优雅地替换字符串中的每个元素(字符)?

带有 Google App Engine 的 iPhone 应用程序

python - 查询在 phpmyadmin 上执行,但不在 python 脚本中执行

python - 如何在 PyQT 的辅助显示器上显示一个窗口?

qt - PyQt QComboBox 下拉方向

python - PyQt 打印 QWidget

python - Tensorflow中如何根据索引给Tensor赋值?

python - PyQt 布局似乎不起作用 - 为什么所有内容都被覆盖?

pyqt4 - 名称 unicode 未定义 python3