【发布时间】:2021-07-08 06:27:43
【问题描述】:
【问题讨论】:
-
你试过
text.index('insert')吗?要获取 line 和 col,请使用line, col = text.index('insert').split('.')
标签: python python-3.x tkinter tkinter-text
【问题讨论】:
text.index('insert')吗?要获取 line 和 col,请使用 line, col = text.index('insert').split('.')
标签: python python-3.x tkinter tkinter-text
这就是你要找的吗?
import tkinter
master = tkinter.Tk()
labelframe = tkinter.LabelFrame( master, labelanchor = 's' )
labelframe.grid( row=0, column= 0, sticky = 'nsew' )
text = tkinter.Text( labelframe, width = 80, height= 24 )
text.grid( row=0, column= 0, sticky = 'nsew' )
def rowcol( ev = None ):
r, c = text.index( 'insert' ).split( '.' )
labelframe[ 'text' ] = f'{r} | {c}'
text.event_add( '<<REACT>>', *( '<Motion>', '<ButtonRelease>', '<KeyPress>', '<KeyRelease>' ) )
b = text.bind( '<<REACT>>', rowcol )
rowcol( ) # get the ball rolling
text.focus()
master.mainloop()
【讨论】:
text.index 的值不是浮点数(虽然它看起来像一个)它是一个row.column 字符串