Как установить количество видимых строк в Gtk :: TextView? - PullRequest
0 голосов
/ 12 апреля 2011

У меня есть Gtk :: TextView, который я всегда хотел бы, чтобы две строки текста были видны, независимо от размера шрифта. Очевидно, что если было введено более двух строк, окно прокручивалось бы, но я бы хотел, чтобы текстовое представление оставалось на 2 строки высотой.

Как мне это сделать?

1 Ответ

2 голосов
/ 13 апреля 2011

Это очень сложно. Например, что вы будете делать, если два размера шрифта смешаны в одной строке?

Один из способов сделать это - создать макет Pango из одной буквы и узнать его высоту. Это непроверенное упрощение кода, который я однажды написал на C; но преобразовать его в C ++ и GTKmm не составит большого труда:

PangoLayout *cell = gtk_widget_create_pango_layout(textview, "X");
int line_height;
pango_layout_get_pixel_extents(cell, NULL, &line_height);
g_object_unref(cell);
gtk_widget_set_size_request(textview, -1, line_height);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...