如何根据当前光标位置从GtkTextBuffer
获取行号?
让我们假设设置了包装模式,我在第3行中间的某些位置。但是我怎样才能让程序告诉我我在第3行呢?
答案 0 :(得分:0)
你不能,因为文本缓冲区不知道用户调整窗口大小的程度。您可以做的最好的事情是使用gtk_text_view_get_iter_location()
,它为您提供迭代器像素坐标的矩形。
您可以将 y 坐标除以矩形的高度来估算行数,但当然只有在所有行都相同的高度时才有效。
答案 1 :(得分:0)
我知道这篇文章很老了,我还在回答这个问题。
要获取行号,您可以尝试以下操作
self.textview.get_iter_at_location(x, y).get_line()
但是我没有尝试使用wrap-mode。