如何让GTK3在Windows 7上看起来像原生?

时间:2017-05-10 08:00:28

标签: css themes gtk3 vala

我正在尝试让我的GTK3应用程序在Windows 7上看起来是原生的。我在以下问题中尝试了答案How to get native windows decorations on GTK3 on Windows 7+ and MSYS2

但它不起作用。我在Windows上的GTK3版本是3.22,我使用的是Vala语言。尝试使用GTK3版本3.20无济于事。我还尝试使用CssProvider在代码本身中更改应用程序的背景颜色,它适用于Ubuntu,但不适用于Windows。在Windows中,将忽略应用程序主题和所有CSS手动设置。

有没有办法实现这个目标?感谢。

1 个答案:

答案 0 :(得分:4)

通过调用代码 显示带有show_all ()的主应用程序窗口来工作:

Gtk.Settings.get_default ().gtk_theme_name = "win32";

使用自定义主题时,主题的位置应为:“YourApplicationExecutable \ share \ themes \ ThemeFolder”,如How to get native windows decorations on GTK3 on Windows 7+ and MSYS2

的接受答案中所述

并且代码中使用 gtk_theme_name 设置的名称应该是包含主题的文件夹的名称。

请注意,方法 get_default()会为您提供默认的GDK屏幕。如果您想要更多地控制特定小部件,请使用方法 get_settings()覆盖您要更改主题的特定小部件。

来源:

How to get native windows decorations on GTK3 on Windows 7+ and MSYS2

https://valadoc.org/gtk+-3.0/Gtk.CssProvider.html

https://valadoc.org/gtk+-3.0/Gtk.Settings.html