如何在tkinter文本框中获取段落的开始和结束位置?

问题描述

我已经使用 tkinter.Text 创建了一个文本编辑器,但是我遇到了一个问题,即程序检测到用户当前所在的段落,即它检测到当前段落所在的开始和结束索引。插入点是。

我还搜索了先前提出的问题,但在tkinter.Text小部件中找不到任何与段落检测有关的内容(网络上提到的bcoz解决方案似乎仅适用于单个字符串,而不适用于tkinter中的line.column。文本小部件。)

因此,如果有人可以详细说明如何在tkinter.Text小部件中获取图形开始和结束的索引,这将非常有帮助。

提前谢谢!

解决方法

我很快写了一些对您有帮助的代码。如果不清楚,请询问。

import tkinter as tk

 
root = tk.Tk()
root.geometry("600x600")
 
tb = tk.Text(root,width=600,height=600)
tb.pack()
 
tags = ["red","blue","green","yellow"]
now_tag = 0
tb.tag_config("red",foreground="red",background="black")
tb.tag_config("blue",foreground="blue",background="black")
tb.tag_config("green",foreground="green",background="black")
tb.tag_config("yellow",foreground="yellow",background="black")
 
 
def update_tb(event=None):
    global now_tag
 
    tb.tag_add(tags[now_tag],"{0} linestart".format(tk.INSERT),"{0} lineend".format(tk.INSERT))
    now_tag = 1 + now_tag if len(tags) - 1 > now_tag else 0
 
 
root.bind('<Return>',update_tb)
root.bind('<Control_L>',update_tb)
root.bind('<Shift_L>',update_tb)
root.mainloop()

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...