如何获取Tkinter Text小部件中的总行数?
我有一个Tkinter的Text
组件,我想知道里面总共有多少行。
我知道可以用text.cget("height")
这个方法,但它只告诉我现在显示了多少行。我想知道总共有多少行。
我想用这些信息来制作一个自定义的滚动条,所以任何帮助都非常感谢。
1 个回答
15
使用 index
方法可以找到 'end' 的值,这个值表示缓冲区中最后一个字符后面的位置。
>>> text_widget.index('end') # returns line.column
'3.0'
>>> int(text_widget.index('end').split('.')[0]) - 1 # returns line count
2
更新 根据 Bryan Oakley 的评论:
>>> int(text_widget.index('end-1c').split('.')[0]) # returns line count
2