Преобразовать номер строки в соответствующие координаты - PullRequest
0 голосов
/ 26 января 2010

У меня есть приложение, написанное на PyGtk. Мне нужно преобразовать конкретный номер строки в соответствующие координаты окна в GtkTextView. Как это можно сделать?

Ответы [ 2 ]

2 голосов
/ 26 января 2010

Начните с использования <a href="http://library.gnome.org/devel/gtk/stable/GtkTextBuffer.html#gtk-text-buffer-get-iter-at-line" rel="nofollow noreferrer">gtk_text_buffer_get_iter_at_line()</a>, чтобы получить указатель на строку. Затем используйте <a href="http://library.gnome.org/devel/gtk/stable/GtkTextView.html#gtk-text-view-get-line-yrange" rel="nofollow noreferrer">gtk_text_view_get_line_yrange()</a>, чтобы преобразовать это в пиксельные координаты. Наконец, используйте <a href="http://library.gnome.org/devel/gtk/stable/GtkTextView.html#gtk-text-view-buffer-to-window-coords" rel="nofollow noreferrer">gtk_text_view_buffer_to_window_coords()</a>, чтобы преобразовать координаты пикселя буфера в координаты окна.

Это ссылки на вызовы API C, но преобразование в PyGtk должно быть тривиальным.

0 голосов
/ 26 января 2010

Это вообще невозможно сделать. Если вы говорите о строке вашей программы pygtk, то вам понадобится API для вашей IDE (среды разработки), чтобы узнать, где конкретная строка исходного кода отображается на экране, если где-либо. Если под «номером строки» вы подразумеваете что-то еще, то, как говорит Игнасио, вам нужно будет предоставить гораздо больше подробностей.

...