Python Tkinter文本
文本部件用于在Python应用程序上显示文本数据。但是,Tkinter提供了Entry部件,用于实现单行文本框。
文本部件用于显示带有各种样式和属性的多行格式化文本。文本部件主要用于向用户提供文本编辑器。
文本部件还可以使用标记和制表符来定位文本的特定部分。我们还可以使用窗口和图像来配合使用文本,因为它也可以用于显示格式化文本。
使用文本部件的语法如下所示。
语法
w = Text(top, options)
以下是可以与Text小部件一起使用的可能选项列表。
序号 | 选项 | 描述 |
---|---|---|
1 | bg | 小部件的背景颜色。 |
2 | bd | 表示小部件的边框宽度。 |
3 | cursor | 将鼠标指针更改为指定的光标类型,例如箭头、点等。 |
4 | exportselection | 选择的文本将被导出到窗口管理器的选择中。如果不想导出文本,可以将其设置为0。 |
5 | font | 文本的字体类型。 |
6 | fg | 小部件的文本颜色。 |
7 | 高度 | 小部件的垂直尺寸,以行为单位。 |
8 | highlightbackground | 小部件失去焦点时的高亮颜色。 |
9 | highlightthickness | 焦点高亮的厚度。默认值为1。 |
10 | highlighcolor | 小部件获得焦点时焦点高亮的颜色。 |
11 | insertbackground | 表示插入光标的颜色。 |
12 | insertborderwidth | 表示光标周围边框的宽度。默认值为0。 |
13 | insertofftime | 插入符号在闪烁周期中消失的时间,以毫秒为单位。 |
14 | insertontime | 插入符号在闪烁周期中出现的时间,以毫秒为单位。 |
15 | insertwidth | 表示插入符号的宽度。 |
16 | padx | 小部件的水平填充。 |
17 | pady | 小部件的垂直填充。 |
18 | relief | 边框的类型。默认值为SUNKEN。 |
19 | selectbackground | 选定文本的背景颜色。 |
20 | selectborderwidth | 选定文本周围边框的宽度。 |
21 | spacing1 | 指定每行文本上方给定的垂直空间量。默认值为0。 |
22 | spacing2 | 此选项指定文本换行时显示行之间要添加多少额外的垂直空间。默认值为0。 |
23 | spacing3 | 指定每行文本下方插入的垂直空间量。 |
24 | state | 如果状态设置为DISABLED,小部件将对鼠标和键盘不响应。 |
25 | tabs | 此选项控制如何使用制表符来定位文本。 |
26 | width | 表示小部件的宽度,以字符为单位。 |
27 | wrap | 此选项用于将较宽的行包装成多行。将此选项设置为WORD,以在适用空间内完全符合的单词后换行。默认值为CHAR,它在任何字符处使过宽的行断开。 |
28 | xscrollcommand | 要使Text小部件水平滚动,我们可以将此选项设置为Scrollbar小部件的set()方法。 |
29 | yscrollcommand | 要使Text小部件垂直滚动,我们可以将此选项设置为Scrollbar小部件的set()方法。 |
方法
我们可以使用以下方法来处理文字小部件。
SN | Method | Description |
---|---|---|
1 | delete(startindex, endindex) | 此方法用于删除指定范围的字符。 |
2 | get(startindex, endindex) | 返回指定范围内的字符。 |
3 | index(index) | 用于获取指定索引的绝对索引。 |
4 | insert(index, string) | 在给定索引处插入指定字符串。 |
5 | see(index) | 根据指定索引的文本是否可见返回布尔值true或false。 |
标记处理方法
标记用于在相关文本的字符之间标记指定位置。
SN | 方法 | 描述 |
---|---|---|
1 | index(mark) | 用于获取指定标记的索引。 |
2 | mark_gravity(mark, gravity) | 用于获取给定标记的重力。 |
3 | mark_names() | 用于获取Text小部件中的所有标记。 |
4 | mark_set(mark, index) | 用于通知给定标记的新位置。 |
5 | mark_unset(mark) | 用于从文本中删除给定的标记。 |
标签处理方法
标签是给文本的不同区域分配的名称。标签用于单独配置文本的不同区域。下面列出了标签处理方法及其描述。
SN | 方法 | 描述 |
---|---|---|
1 | tag_add(tagname, startindex, endindex) | 该方法用于标记指定范围内的字符串。 |
2 | tag_config | 该方法用于配置标记属性。 |
3 | tag_delete(tagname) | 该方法用于删除给定的标记。 |
4 | tag_remove(tagname, startindex, endindex) | 该方法用于从指定范围内删除标记。 |
示例
from tkinter import *
top = Tk()
text = Text(top)
text.insert(INSERT, "Name.....")
text.insert(END, "Salary.....")
text.pack()
text.tag_add("Write Here", "1.0", "1.4")
text.tag_add("Click Here", "1.8", "1.13")
text.tag_config("Write Here", background="yellow", foreground="black")
text.tag_config("Click Here", background="black", foreground="white")
top.mainloop()
输出: