Gtk#/ Gdk#将Gtk.Image(从IconName)转换为Gdk.Pixmap

时间:2011-08-25 13:14:01

标签: c# gtk#

我正在尝试从通过Gtk.Image加载的IconName加载Gdk.Pixmap。但是,我无法弄清楚如何实际转换它。

如果我运行此代码:

Gtk.Image.NewFromIconName("computer", IconSize.Dialog)

如何将其转换为Gdk.Pixmap?无法使用Gtk.Image.Pixmap属性,因为它期望Gtk.Image包装Gdk.Pixmap。

1 个答案:

答案 0 :(得分:1)

经过一番挖掘后,我发现了最好的选择。而不是使用Image.NewFromIconName,它更容易使用

IconSet iconset = new IconSet();
IconSource source = new IconSource();
source.IconName = "icon-name";
iconset.AddSource(source);
Pixbuff p = iconset.RenderIcon(new Style(), TextDirection.None, StateType.Normal, IconSize.SmallToolbar, controlOrNull, "")