PyQt/PySide 中是否有默认图标?

新手上路,请多包涵

我正在阅读 PySide 上的教程,我在想,我是否需要为每件事找到我自己的图标,或者是否有某种方法可以使用一些内置图标。这样,如果我想让我的小图形用户界面在另一个桌面环境中运行,我就不需要找到一整套新的图标。

原文由 user1155844 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.2k
2 个回答

您需要的是 Pyside QIcon.fromTheme 函数。基本上,它从当前系统主题创建带有所需图标的 QIcon 对象。

用法:

undoicon = QIcon.fromTheme("edit-undo")

“edit undo” - 图标名称“type”/“function”可以在 这里 找到

这适用于 X11 系统,对于 MacOSX 和 Windows,请查看 QIcon 文档 QIcon.fromTheme

编辑 从网站插入这个,因为上次它是一个断开的链接。

静态 PySide.QtGui.QIcon。 fromTheme ( 名称[, fallback=QIcon()] )

参数:

返回类型:

PySide.QtGui.QIcon

返回当前图标主题中名称对应的 PySide.QtGui.QIcon 。如果在当前主题中没有找到这样的图标,则返回回退。

最新版本的 freedesktop 图标规范和命名规范可以在这里获得:

从当前图标主题中获取图标:

 undoicon = QIcon.fromTheme("edit-undo")

或者,如果您想为不支持主题图标的平台提供有保证的回退,您可以使用第二个参数:

 undoicon = QIcon.fromTheme("edit-undo", QIcon(":/undo.png"))

笔记

默认情况下,只有 X11 支持主题图标。为了在 Mac 和 Windows 上使用主题图标,您必须在 PySide.QtGui.QIcon.themeSearchPaths() 之一中捆绑一个兼容的主题并设置适当的 PySide.QtGui.QIcon.themeName()

也可以看看

原文由 Paweł Jarosz 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题