use*_*844 25 python user-interface icons pyqt pyside
我正在阅读关于PySide的教程,我在想,我是否需要为每件事找到自己的图标,或者是否有某种方法可以使用一些内置图标.这样,如果我想让我的小gui在另一个桌面环境中运行,我就不需要找到一整套新的图标.
小智 38
你需要的是Pyside QIcon.fromTheme功能.Basicaly它使用当前系统主题中的所需图标创建QIcon对象.
用法:
undoicon = QIcon.fromTheme("edit-undo")
"编辑撤消" - 可在此处找到图标"类型"/"功能"的名称
这适用于X11系统,对于MacOSX和Windows,请查看QIcon文档 QIcon.fromTheme
编辑从网站上插入此内容,因为上次它是一个断开的链接.
static PySide.QtGui.QIcon.fromTheme(name [,fallback = QIcon()])
参数:
- 名字 - unicode
- 后备 - PySide.QtGui.QIcon
返回类型:
返回与当前图标主题中的name对应的PySide.QtGui.QIcon.如果在当前主题中找不到这样的图标,则返回后退.
可以在此处获取最新版本的freedesktop图标规范和命名规范:
- http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html
- http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html
要从当前图标主题中获取图标:
Run Code Online (Sandbox Code Playgroud)undoicon = QIcon.fromTheme("edit-undo")
或者,如果要为不支持主题图标的平台提供有保证的回退,可以使用第二个参数:
Run Code Online (Sandbox Code Playgroud)undoicon = QIcon.fromTheme("edit-undo", QIcon(":/undo.png"))
注意
默认情况下,只有X11支持主题图标.要在Mac和Windows上使用主题图标,您必须在PySide.QtGui.QIcon.themeSearchPaths()中捆绑一个兼容主题,并设置相应的PySide.QtGui.QIcon.themeName().
也可以看看
还有另一种方法可以使用默认样式的标准像素图访问PyQt/PySide中的一些标准内置图标.例如,以下内容创建一个用于打开文件的图标:
self.style().standardIcon(QtGui.QStyle.SP_DialogOpenButton)
Run Code Online (Sandbox Code Playgroud)
有关标准像素映射的完整列表,请参阅:
在 中PyQt5
,这是创建带有播放图标的按钮的简单示例:
play_button = QtGui.QPushButton('Play video')
play_button.setIcon(QtGui.QApplication.style().standardIcon(QtGui.QStyle.SP_MediaPlay))
Run Code Online (Sandbox Code Playgroud)
Qt5 文档提供了可能的 SP(“标准像素图”)图标的列表。请参阅enum QStyle::StandardPixmap
此处: http: //doc.qt.io/qt-5/qstyle.html
归档时间: |
|
查看次数: |
19363 次 |
最近记录: |