gpt4 book ai didi

c - GTK 背景全高不起作用

转载 作者:行者123 更新时间:2023-11-30 17:05:58 25 4
gpt4 key购买 nike

我需要你的帮助,我正在尝试在 TextView 的整个长度上设置背景颜色。我试图用这个声明来做到这一点:

gtk_text_buffer_create_tag(buffer, "white_bg", "background-full-height", TRUE, "background", "white","foreground", "blue", NULL);

当我设置文本时:

  gtk_text_buffer_insert_with_tags_by_name(buffer, &iter,"SAMPLE TEXT", -1, "white_bg", "left",  NULL);

它设置蓝色字体,白色背景,但它不会在整个长度上设置白色背景,仅在文本下设置。

你能帮我找出我做错了什么吗?

最佳答案

此行为是设计使然:当您自定义标签时,它会影响带有该标签的文本。要修改整个小部件的背景,请使用 gtk_widget_modify_bg 。例如(未经测试):

GdkColor white;
gdk_color_parse("white", &white);
gtk_widget_modify_bg(textview, GTK_STATE_NORMAL, &white);

请注意,文档声称 gtk_widget_modify_bg 已被弃用,取而代之的是 gtk_widget_override_background_color,而后者又被弃用,取而代之的是特定于应用程序的 GtkStyleProvider 和 CSS 样式类 - 没有明确的示例说明如何执行此操作。

关于c - GTK 背景全高不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34997562/

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