1 CSS
CSS用于控制网页的样式和布局。
1.1 CSS3 边框
用CSS3,可以创建圆角边框,添加阴影框,并作为边界的形象而不使用设计程序。
/* 1.创建css对象 */
GtkCssProvider * gtk_css_provider_new (void);
/* 2.1 从文件导入css数据到css对象 */
gboolean gtk_css_provider_load_from_path (GtkCssProvider *css_provider,
const gchar *path,
GError **error);
/* 2.2 从字符串导入css数据到css对象*/
gboolean gtk_css_provider_load_from_data (GtkCssProvider *css_provider,
const gchar *data,
gssize length,
GError **error);
/* 3.得到某一个构件的文本,并设置其风格(方式一) */
GtkStyleContext * gtk_widget_get_style_context (GtkWidget *widget);
void gtk_style_context_add_provider (GtkStyleContext *context,
GtkStyleProvider *provider,
guint priority);
void gtk_style_context_save (GtkStyleContext *context);
/* 3.1 得到全局Screen,设定全部Screen主题(方式二) */
GdkDisplay *gdk_display_get_default (void);
GdkScreen * gdk_display_get_default_screen (GdkDisplay *display);
void gtk_style_context_add_provider_for_screen (GdkScreen *screen,
GtkStyleProvider *provider,
guint priority);
/* 4.释放该对象内存 */
g_object_unref (provider);
void gtk_widget_set_name (GtkWidget *widget,const gchar *name);
const gchar *gtk_widget_get_name (GtkWidget *widget);
eg.
provider = gtk_css_provider_new();
gtk_css_provider_load_from_path(GTK_CSS_PROVIDER(provider), "style.css",NULL);
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);
g_object_unref (provider);