Python 获取Tkinter文本小部件中的总行数?
我有一个TkinterPython 获取Tkinter文本小部件中的总行数?,python,text,tkinter,lines,Python,Text,Tkinter,Lines,我有一个TkinterText小部件,我想知道它包含多少行 我知道text.cget(“height”)方法,但是它只告诉我显示了多少行。我想知道总共有多少行 我正在使用这些信息,试图使我自己的自定义滚动条,所以任何帮助将不胜感激 使用index方法查找'end'的值,该值正好位于缓冲区中最后一个字符之后 >>> text_widget.index('end') # returns line.column '3.0' >>> int(text_widge
Text
小部件,我想知道它包含多少行
我知道text.cget(“height”)
方法,但是它只告诉我显示了多少行。我想知道总共有多少行
我正在使用这些信息,试图使我自己的自定义滚动条,所以任何帮助将不胜感激 使用
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
您还可以使用
'end-1c'
来避免必须减去1(尽管“.”后面的值将是最后一行的字符数,而不是零)。谢谢,这非常有用!当我完成当前的项目后,我可能会发布一些作为Tkinter扩展而制作的小部件。如果有兴趣。如果您需要全部显示行,请在此处查看我的答案以获取帮助(并相应更改开始和结束,并编辑我最终回答的是剩余行而不是全部):