如何在 GTK 中向应用程序添加图标#

How do you add icons to application in GTK#

我有这个非常基本的 GTK# window,但标题栏上似乎缺少图标。我认为应该有用于关闭、最大化和最小化的图标 window.

我的问题是:如何在 GTK 3.22.7 中添加图标? GTK 如何确定要在何处搜索图标?

我想 GTK# 和 GTK 的答案应该是相似的。如果你不知道它是如何在 C# 中完成的,你能写下纯 GTK 的答案吗?我也许能弄清楚如何将它移植到 C#。

Self-answer:

您需要具有如下结构的图标目录:

icons/
├── Adwaita
│   ├── 16x16
│   ├── 22x22
│   ├── 24x24
│   ├── 256x256
│   ├── 32x32
│   ├── 48x48
│   ├── 512x512
│   ├── 64x64
│   ├── 8x8
│   ├── 96x96
│   ├── cursors
│   ├── icon-theme.cache
│   ├── index.theme
│   ├── scalable
│   └── scalable-up-to-32
└── hicolor
    ├── 128x128
    ├── 16x16
    ├── 192x192
    ├── 22x22
    ├── 24x24
    ├── 256x256
    ├── 32x32
    ├── 36x36
    ├── 48x48
    ├── 512x512
    ├── 64x64
    ├── 72x72
    ├── 96x96
    ├── icon-theme.cache
    ├── index.theme
    ├── scalable
    └── symbolic

然后,您必须指定图标的路径/

Gtk.IconTheme.Default.AppendSearchPath(@"D:\dev\git\GtkApp1\bin\Debug\icons");

您也可以选择想要使用的图标主题

Gtk.Settings.Default.IconThemeName = "Adwaita";