gpt4 book ai didi

CSS 与 gtk 3.22.25 无法运行

转载 作者:行者123 更新时间:2023-11-30 16:33:51 25 4
gpt4 key购买 nike

你好,亲爱的热情 gtk 家伙

一个小代码来解释我的问题使用 gtk 3.10.8 代码 belox 可以在蓝色窗口中正常运行

/* Compile with: 
* gcc -Wall windox_css.c -o windox_css `pkg-config --cflags --libs gtk+-3.0`
*/
#include <gtk/gtk.h>

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_APPLICATION);
//"-GtkWidget-focus-line-width: 0;\n"
gtk_css_provider_load_from_data (GTK_CSS_PROVIDER(provider),
" GtkWindow {\n"

" -GtkWindow-resize-grip-height: 0;\n" /* not guaranteed, can be overridden by window manger */
" -GtkWindow-resize-grip-width: 0;\n" /* not guaranteed, can be overridden by window manger */
" background-color: blue;\n" /* named color units */
" background-color: rgb (0, 0, 255);\n" /* rgb color units, overrides the previous "background-color" assignment */
" background-color: rgba (0,0,255,1);\n" /* rgba color units, overrides the previous "background-color" assignment */
" background-color: #0000FF;\n" /* hexadecimal color units, overrides the previous "background-color" assignment */
" background-color: shade(blue, 1.0);\n" /* overrides previous color assignment */
"}\n", -1, NULL);
g_object_unref (provider);
/*----------------------------------------------------------------------------------------------------------------------------*/

gtk_widget_show_all (window);
gtk_main ();
return (0);
}

在新版本 gtk 3.22.25 中,窗口保持白色。什么意思?你能帮助我了解我必须改变什么吗?

最佳答案

答案很容易在 gtk+ 引用中找到。自 3.20 起 css 发生变化。

所有作为 GtkLabel 的小部件名称都有一个 css 名称,如标签减号,没有 Gtk!!!!例如

gboolean css_flag_320 = check_gtk();

if (css_flag_320)
{
gtk_css_provider_load_from_data (GTK_CSS_PROVIDER(provider),
" window {\n"
" -widget-focus-line-width: 0;\n"
" -window-resize-grip-height: 0;\n" /* not guaranteed, can be overridden by window manger */
" -window-resize-grip-width: 0;\n" /* not guaranteed, can be overridden by window manger */
" background-color: shade(darkgreen, 1.0);\n"
"}\n"
"/* gestion du bouton */\n"
"button {\n"
"background-image: -gtk-gradient (radial,\n"
"0.1 0.1, 0.2,\n"
"0.2 0.2, 1,\n"
" from (lightgreen),\n"
" to (shade (red, 0.9)));\n"
" }\n"
"/* gestion du bouton */\n"
"textview:active {\n"
"background-image: -gtk-gradient (radial,\n"
"0.1 0.1, 0.2,\n"
"0.2 0.2, 1,\n"
"from (red),\n"
"to (shade (yellow, 0.4)));\n"
"}\n"
"/* gestion du dialogue */\n"
"dialog{color: black;font-size: 110%; font-family: Helvetica, sans-serif; }\n"
"dialog{background-color: pink; }\n"//color = #F00 ou pink
"/* gestion du dialogue d'erreur */\n"
"messagedialog{color: black;font-size: 110%; font-family: Helvetica, sans-serif; }\n"
"messagedialog{background-color: orange; }\n"
"/* mise en cohérence de couleur du scroll et du notebook conseillée */\n"
" .scrollwindow {color: red;}\n"
"/* gestion du notebook */\n"
"notebook arrow:nth-child(first) { color: red ;}\n" // ne sert que pour le triangle du scrolling qui apparait en red
"notebook arrow:nth-child(last) { color: orange ;}\n" // ne sert que pour le triangle du scrolling qui apparait en red

"notebook #normal {\n" // normalement .notebook devrait être ok ???
" padding: 10px 20px 10px 20px;\n"
" border-radius: 8px;\n"
" background-color: shade(lightblue, 1.0);}\n"
"notebook #modified {\n" // normalement .notebook devrait être ok ??? et .modified ne fonctionne pas
" padding: 10px 20px 10px 20px;\n"
" border-radius: 8px;\n"
" background-color: yellow;\n"
"}\n"
".tooltip{background-color: yellow;}",
-1, NULL); //color = #f90192

关于CSS 与 gtk 3.22.25 无法运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49560897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com