2010-10-18 33 views
0

我已经开始使用GTK +和Vala,并且很难找到创建自定义按钮的文档(全新的按钮)。事实上,现在我想到了,每个GTK +应用程序都具有不同的外观,这就是GTK +应用程序。如果我决定使用GTK +,难以为我的应用程序创建全新的外观?GTK +应用程序特定的皮肤可能吗?

回答

1

您可以使用GTK2_RC_FILES环境变量为(仅)您的应用程序分配一个特殊的主题。

例如,你可以像这样创建一个批处理起动器(Windows)中:

set GTK2_RC_FILES=%GTK_HOME%\share\themes\slickness-black\gtk-2.0\gtkrc 
launch.exe 

或者在Linux下(没有尝试过一个):

env GTK2_RC_FILES=/usr/share/themes/slickness-black/gtk-2.0/gtkrc ./launch 

提示:不要信任GTK_HOME被设置,而是使用GTK +安装的绝对路径。如果您在应用程序中安装了特殊主题,则可以使用相对路径(相对于您的应用程序的安装路径)。那么你应该确保主题是由最常见的主题引擎之一支持的,因为通常不是所有主题都被安装(特别是在Windows上,GTK安装程序很混乱)。

3

它的目的很难,因为“不同的GTK外观”是整个点。 GTK应用程序通常对可用性,可访问性和用户体验有很大的价值。您,应用程序员应该专注于您的应用程序的内容,并让用户选择他们喜欢的主题。如果您制作自定义按钮,那么它们可能太窄而不适合使用另一种语言的应用程序的用户翻译的标签。或者,也许你的自定义按钮看起来真的很可怕的人喜欢的窗口背景颜色。

1

@ gtksharp:

string fileName = @"/usr/valapp/gtkrc3"; Gtk.Rc.AddDefaultFile(fileName); Gtk.Rc.Parse(fileName);