Получение номера строки GtkTextView - PullRequest
1 голос
/ 18 марта 2011

Как я могу получить номер строки из GtkTextBuffer в зависимости от текущей позиции курсора?Давайте предположим, что режим переноса установлен, и я нахожусь где-то в середине 3-й строки.Но как я могу заставить программу сообщить мне, что я на третьей линии?

Ответы [ 2 ]

0 голосов
/ 01 октября 2013

Я знаю, что этот пост очень старый, но я отвечаю на него.Чтобы получить номер строки, вы можете попробовать следующее self.textview.get_iter_at_location(x, y).get_line() Но я не пробовал это с режимом переноса.

0 голосов
/ 18 марта 2011

Вы не можете, потому что текстовый буфер не знает, насколько большой пользователь изменил размер окна. Лучшее, что вы можете сделать, это использовать gtk_text_view_get_iter_location(), который дает вам прямоугольник координат пикселей итератора.

Вы можете разделить координату y на высоту прямоугольника, чтобы оценить номер строки, но, конечно, это работает, только если все ваши строки имеют одинаковую высоту.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...