Cds*_*boy 8 python icons pyqt4
我正在使用PyQt4模块在python中编写基本程序.我希望能够使用系统主题的图标来显示首选项对话框的图标,但我不知道如何执行此操作.所以我的问题是,你如何获得一个图标的位置,但确保它随着系统的图标主题而改变?如果它很重要,我正在ubuntu 9.04下开发这个,所以我使用的是gnome桌面.
不幸的是,Qt似乎不支持获取特定主题的图标.有很多方法可以为KDE和Gnome做到这一点.
KDE方式非常优雅,考虑到Qt是KDE的工具包,这是有道理的.而不是使用PyQt4.QtGui类QIcon,而是使用PyKDE4.kdeui类KIcon.一个例子是:
from PyKDE4.kdeui import *
icon = KIcon("*The Icon Name*")
Run Code Online (Sandbox Code Playgroud)
看到PyKDE文档这个班,在这里.
为gnome获得支持的一种方法是使用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())
Run Code Online (Sandbox Code Playgroud)
请参阅Icon Theme类和Icon Info类的文档.
编辑:感谢CesarB的修正
| 归档时间: |
|
| 查看次数: |
3544 次 |
| 最近记录: |