📜  在 pyqt 中创建带有图标的 QAction - Python (1)

📅  最后修改于: 2023-12-03 15:23:15.675000             🧑  作者: Mango

在 PyQt 中创建带有图标的 QAction

在 PyQt 中,我们可以使用 QAction 类创建菜单动作,并为其添加图标。这个过程非常简单,接下来我们将一步一步地学习如何实现它。

步骤 1:导入必要的模块

在开始编写代码之前,我们需要先导入必要的 PyQt 模块。

from PyQt5.QtWidgets import QAction
from PyQt5.QtGui import QIcon
步骤 2:创建 QAction 对象

接下来,我们可以创建 QAction 对象,并为其设置文本、快捷键和提示信息。

# 创建 QAction 对象
action = QAction("菜单项名称", self)

# 设置快捷键
action.setShortcut("Ctrl+S")

# 设置提示信息
action.setToolTip("保存文件")
步骤 3:为 QAction 添加图标

如果我们想要为 QAction 添加图标,我们需要使用 QIcon 类创建一个图标对象,并将其设置为 QAction 的图标。

# 创建图标对象
icon = QIcon("path/to/icon.png")

# 将图标设置为菜单项的图标
action.setIcon(icon)
步骤 4:将 QAction 添加到菜单中

最后一步是将 QAction 添加到菜单中,这样它就会在菜单中显示。

# 将菜单动作添加到菜单中
menu.addAction(action)

完整代码示例:

from PyQt5.QtWidgets import QWidget, QApplication, QMenu, QAction
from PyQt5.QtGui import QIcon
import sys

class Example(QWidget):
	def __init__(self):
		super().__init__()

		self.initUI()

	def initUI(self):

		self.setGeometry(300, 300, 300, 200)
		self.setWindowTitle('菜单')

		# 创建菜单对象
		menu = QMenu(self)

		# 创建 QAction 对象
		action = QAction("菜单项名称", self)

		# 设置快捷键
		action.setShortcut("Ctrl+S")

		# 设置提示信息
		action.setToolTip("保存文件")

		# 创建图标对象
		icon = QIcon("path/to/icon.png")

		# 将图标设置为菜单项的图标
		action.setIcon(icon)

		# 将菜单动作添加到菜单中
		menu.addAction(action)

		# 在窗口上显示菜单
		menu.move(50, 50)
		menu.show()

if __name__ == '__main__':
	app = QApplication(sys.argv)
	ex = Example()
	sys.exit(app.exec_())

这个示例程序会在屏幕上显示一个菜单,菜单中包含一个带有图标的菜单项。

希望这篇文章可以帮助你在 PyQt 中创建带有图标的 QAction。