1

我刚刚学习 GTK 编程,我不知道如何显示文本的“页面”,M 行 N 列,每个位置包含一个具有给定前景和背景的字符。边界矩形的大小将固定,我会不时更新“页面”(或网格)的内容。我怎样才能聪明地做到这一点?

我读过 GtkLabel,但这似乎是错误的。GtkTextView 看起来可能有效,但我的实验很尴尬。GtkTextView 似乎想要显示文本流,而不是显示网格并更新单个网格位置。

对此的任何帮助将不胜感激。

4

1 回答 1

0

在 GTK 中没有很好的预制解决方案,但我已经使它可以与 GtkTextView 一起工作,其中的内容是 M 个字符串,每个字符串包含 N 个字符,并用\n. 您可以通过在字符串 ( ) 中的正确位置获取 GtkTextItery * (N + 1) + x并替换那里的字符来更新单个网格位置。

另一种方法是编写一个自定义小部件,您可以在draw信号处理程序中自己呈现网格文本。

于 2020-06-11T04:18:15.473 回答