是否可以在 Tkinter Text 小部件中设置光标位置?我还没有发现任何非常有用的东西。
我能做的最好的事情是在某个 xy 坐标处发出一个<Button-1>
and<ButtonRelease-1>
事件,但那是一个像素量,而不是一个字母量。
是否可以在 Tkinter Text 小部件中设置光标位置?我还没有发现任何非常有用的东西。
我能做的最好的事情是在某个 xy 坐标处发出一个<Button-1>
and<ButtonRelease-1>
事件,但那是一个像素量,而不是一个字母量。
如果“text”、“line”和“column”是您的文本对象,则所需的文本行和所需的列变量分别是:
text.mark_set("insert", "%d.%d" % (line + 1, column + 1))
如果您不想关心行号......好吧,您必须这样做。
要设置光标位置,您可以使用该text_widget.mark_set
方法,带有"insert"
(或Tkinter.INSERT
“常量”)第一个参数,对于第二个参数,可以使用多种形式之一,最有用的是:
"%d,%d" % (line, column)
, 其中行从 1 开始,列从 0 开始"1.0+%d chars" % index
,其中 index 是从 0 开始的,就像 Python 中的字符串/unicode 索引一样要获取标记的索引,可以使用以下text_widget.index
方法:
text_widget.index(Tkinter.INSERT)
此属性仅适用于 Text Widget,因为对于 Entry Widget,我们可以使用:
entry_widget_name.icursor("position")
对于文本小部件将是:
text_widget_name.mark_set("insert", "%d.%d" % (x,y))
其中 x = 行位置 y = 列位置
(例如使用带点的整数,例如 1.0 或 3.0)