Gtk#/ Gtk#转换Gtk.图像(从IconName)到Gdk.Pixmap

本文关键字:Gtk# Gdk Pixmap IconName 转换 Gtk 图像 | 更新日期: 2023-09-27 18:06:33

我正在尝试加载Gdk。通过Gtk.Image加载的IconName中的像素图。然而,我不知道如何实际转换这个

如果我运行以下代码:

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

如何将其转换为Gdk.Pixmap?不能使用Gtk. image . pixmap属性,因为它需要Gtk。图片包装Gdk.Pixmap.

Gtk#/ Gtk#转换Gtk.图像(从IconName)到Gdk.Pixmap

经过一番挖掘,我找到了最好的选择。而不是使用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, "")