移动到文本小部件 tkinter 中的特定位置
Moving to a specific position in a text widget tkinter
我想知道是否可以在 tkinter 的文本小部件中移动到特定位置。
我在文本小部件中实现了搜索,并希望实现 "next" 和 "previous" 方法以便我的搜索在文本小部件中移动。有可能吗?
谢谢你的帮助。
这是我的方法的代码:
def find():
xml.tag_delete("search")
xml.tag_configure("search", background="green")
start="1.0"
if len(fi.get()) > 0:
xml.mark_set("insert", xml.search(fi.get(), start))
while True:
pos = xml.search(fi.get(), start, END)
if pos == "":
break
start = pos + "+%dc" % len(fi.get())
xml.tag_add("search", pos, "%s + %dc" % (pos,len(fi.get())))
fi
是搜索模式的输入字段。 xml
是一个文本字段。
文本小部件有 标记 ,它们实际上是命名位置。插入光标由标记 "insert"
(和 tkinter 常量 INSERT
)定义。您可以使用 mark_set
方法移动此索引。
例如,这会将插入光标移动到第 3 行,第 14 个字符:
the_widget.mark_set("insert", "3.14")
如果您想确保新的插入位置可见,您可以使用 see
方法,该方法将滚动小部件足以使给定索引可见:
the_widget.see("insert")
我想知道是否可以在 tkinter 的文本小部件中移动到特定位置。 我在文本小部件中实现了搜索,并希望实现 "next" 和 "previous" 方法以便我的搜索在文本小部件中移动。有可能吗? 谢谢你的帮助。
这是我的方法的代码:
def find():
xml.tag_delete("search")
xml.tag_configure("search", background="green")
start="1.0"
if len(fi.get()) > 0:
xml.mark_set("insert", xml.search(fi.get(), start))
while True:
pos = xml.search(fi.get(), start, END)
if pos == "":
break
start = pos + "+%dc" % len(fi.get())
xml.tag_add("search", pos, "%s + %dc" % (pos,len(fi.get())))
fi
是搜索模式的输入字段。 xml
是一个文本字段。
文本小部件有 标记 ,它们实际上是命名位置。插入光标由标记 "insert"
(和 tkinter 常量 INSERT
)定义。您可以使用 mark_set
方法移动此索引。
例如,这会将插入光标移动到第 3 行,第 14 个字符:
the_widget.mark_set("insert", "3.14")
如果您想确保新的插入位置可见,您可以使用 see
方法,该方法将滚动小部件足以使给定索引可见:
the_widget.see("insert")