如何在 C 语言中设置 GTK4 中 GtkTextView 的属性(特别是颜色)?

问题描述 投票:0回答:2

提前感谢您的帮助。

情况是这样的:

  1. 我想设置一个在某些情况下更改 GtkTextView 背景颜色的交互,例如如果它专注的话。
  2. 我找到了诸如 gtk_text_set_attributesgtk_label_set_attributes 之类的方法。
  3. 但是,我找不到 GtkTextView 的等效项。

思考为什么这样的等价物不存在,以及我如何构建解决方法?

谢谢!

c gtk gtk4
2个回答
0
投票

我认为最好的方法是在这里使用CSS。关于此还有更多问题和答案。

这里有一个示例:

https://stackoverflow.com/a/78729982/22768315

然后只需重新加载并应用于提供者的预期事件。

问候


0
投票

这就是我在我的应用程序中所做的----

  PangoAttrList *attrlist = pango_attr_list_new();

  PangoAttribute *attrFC = pango_attr_foreground_new (65535, 0, 0); //red
  pango_attr_list_insert (attrlist, attrFC);

  PangoAttribute *attrBC = pango_attr_background_new (0, 0, 65535); //blue
  pango_attr_list_insert (attrlist, attrBC);

  /**set it on GtkText widget**/
  gtk_text_set_attributes ((GtkText *)text, attrlist);

  pango_attr_list_unref(attrlist);

根据需要进行修改。

© www.soinside.com 2019 - 2024. All rights reserved.