Heim >Web-Frontend >HTML-Tutorial >GTK3.0 使用CSS设置控件背景色_html/css_WEB-ITnose

GTK3.0 使用CSS设置控件背景色_html/css_WEB-ITnose

WBOY
WBOYOriginal
2016-06-24 11:51:121876Durchsuche

********************************************************************************************************************

我已参加2014“博客之星的”评选,觉得我的文章对您有帮助的,请投上您宝贵的一票

***********************************************************************************************************************

 GTK 2.0 在windows运行下,会出现文本框无法输入的问题。这个查找了很多资料,说是2.0版本的问题,目前还未找到好的解决方法。但是使用GTK3.0没有影响。而GTK3.0在设置控件背景图片没有找到合适的方法。参考网上给的例子使用CSS来实现(详细参见参考资料内容)。但是在window下运行并未生效。具体原因不明:

/*  Compile with:   gcc -Wall -o backimage `pkg-config --cflags --libs gtk+-3.0` backimage.c */#include <gtk>int main(int argc, char *argv[]){  GtkWidget *window;/*----- CSS ----------- */  GtkCssProvider *provider;  GdkDisplay *display;  GdkScreen *screen;/*-----------------------*/  gtk_init (&argc, &argv);  window = gtk_window_new (GTK_WINDOW_TOPLEVEL);/*    gtk_window_set_default_size (GTK_WINDOW(window),                                 500, 300);*/  g_signal_connect (GTK_WIDGET(window),                    "destroy",                    G_CALLBACK (gtk_main_quit),                    NULL);/*------------- CSS  --------------------------------------------------------------------------------------------------*/  provider = gtk_css_provider_new ();  display = gdk_display_get_default ();  screen = gdk_display_get_default_screen (display);  gtk_style_context_add_provider_for_screen (screen,                                             GTK_STYLE_PROVIDER(provider),                                             GTK_STYLE_PROVIDER_PRIORITY_USER);  gtk_css_provider_load_from_data (GTK_CSS_PROVIDER (provider),                                     " GtkWindow {\n"                                                              "   background-image: url('abstract-blue-02.jpg');\n"                                        "}\n", -1, NULL);  g_object_unref (provider);/*----------------------------------------------------------------------------------------------------------------------*/  gtk_widget_show_all (window);  gtk_main ();return(0);}</gtk>

GTK3.0 Ubuntu系统下安装命令如下:

apt-get install gtk3.0


参考资料:

http://www.gtkforums.com/viewtopic.php?f=3&t=988&sid=b63d18d182917efd7e2b04eb8c5e50c1&start=15

 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn