GTK:如何显示固定大小的文本页面

GTK: How to display a fixed-size page of text

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

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

如有任何帮助,我们将不胜感激。

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

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