我写的一个基本的程序中使用python PyQt4模块。我想要能够使用我的系统主题的图标,为东西喜欢的偏好对话的图标,但我们不知道如何做到这一点。所以我的问题是,你如何得到的位置标,但要确保它改变了与该系统的图标的主题?如果它的事项,我要开发这个下ubuntu9.04,所以我使用的侏儒桌面上。

有帮助吗?

解决方案

不幸的是,它似乎脱不支持获取的图标,为一个特定的主题。有办法做到这两个KDE和侏儒。

KDE的方式是相当优雅,这是有道理的,考虑到,脱是KDE的工具包。而不是使用PyQt4.QtGui类QIcon,你而不是使用PyKDE4.kdeui类KIcon.这样的一个例子是:

from PyKDE4.kdeui import *
icon = KIcon("*The Icon Name*")

看到PyKDE文件对于这种类, 在这里,.

一个办法获得支持,这对于侏儒是使用python gtk包。这是不是像你一样的kde的方式,但它的工作。它可以用这样的:

from PyQt4 import QtGui
from gtk import icon_theme_get_default

iconTheme = icon_theme_get_default()
iconInfo = iconTheme.lookup_icon("*The Icon Name*", *Int of the icon size*, 0)
icon = QtGui.QIcon(iconInfo.get_filename())

请参阅文件 图标的主题类图标的信息类.

编辑:感谢您的修正CesarB

其他提示

我花了研究这个我不久前的一个体面的数额,我的结论是,不幸的是,Qt不提供跨平台的方式这个功能。理想情况下,QIcon类会对文件的默认打开,保存,“+”,“ - ”,喜好等,但考虑到它没有你就必须抓住适当的图标为您的桌面环境

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top