pyqt6 报错: type object 'QToolButton' has no attribute 'MenuButtonPopup'
时间: 2023-10-07 16:08:49 浏览: 112
小白白也能学会的 PyQt 教程 - QRadioButton 介绍以及基本使用
这个报错是因为在 PyQt6 中,`QToolButton` 类不再有 `MenuButtonPopup` 属性,相应的功能可能有所改变。
如果你想要实现 `MenuButtonPopup` 的功能,可以使用 `QToolButton.setMenu()` 方法来设置一个菜单,然后使用 `QToolButton.setPopupMode(QToolButton.MenuButtonPopup)` 方法来设置弹出方式为菜单按钮模式。
下面是一个简单示例:
```python
from PyQt6.QtWidgets import QApplication, QMainWindow, QToolButton, QMenu
app = QApplication([])
# 创建一个主窗口
window = QMainWindow()
# 创建一个工具按钮
tool_button = QToolButton()
tool_button.setText("菜单按钮")
# 创建一个菜单
menu = QMenu()
menu.addAction("菜单项1")
menu.addAction("菜单项2")
# 将菜单设置给工具按钮
tool_button.setMenu(menu)
# 设置弹出方式为菜单按钮模式
tool_button.setPopupMode(QToolButton.MenuButtonPopup)
# 将工具按钮添加到主窗口
window.setCentralWidget(tool_button)
window.show()
app.exec()
```
你可以根据自己的实际需求进行修改和调整。
阅读全文