Python tkinter教程(4) —— Text控件详解

Python的标准Tk GUI工具包的接口

tkinter系列文章

python tkinter窗口简单实现

Python tkinter (1) —— Label标签

Python tkinter (2) —— Button标签

Python tkinter (3) —— Entry标签

Text

文本控件,用于显示多行文本

简单多行文本显示

调用tkinter text文本控件,设置宽度和高度,设置字体为黑体大小15.

示例如下:

text = tkinter.Text(tk, width=300, height=40, font=('黑体', 15))
text.pack()

# 插入文本
str = '''
七律·人民解放军占领南京
近现代·毛泽东
钟山风雨起苍黄,百万雄师过大江。
虎踞龙盘今胜昔,天翻地覆慨而慷。
宜将剩勇追穷寇,不可沽名学霸王。
天若有情天亦老,人间正道是沧桑。
'''
text.insert(tkinter.INSERT, str)

tk.mainloop()

示例如下:

带滚动条的Text

当文本内容过多时,增加右侧滚动条友好处理。

如果需要滚动条显示出来,需要文本的高度超过设置的高度。

然后通过文本控件与滚动条控件双项绑定实现同步移动。

示例如下:

import tkinter

tk = tkinter.Tk()
tk.title('滚动条Text示例')
tk.geometry('400x100+200+20')

# 创建滚动条
scroll = tkinter.Scrollbar()
# 简单多行文本显示
text = tkinter.Text(tk, width=400, height=100, font=('黑体', 15))
# 放到窗体的右侧 fill填充Y轴
scroll.pack(side=tkinter.RIGHT, fill=tkinter.Y)
text.pack(side=tkinter.LEFT, fill=tkinter.Y)
# 关联
# 滚动条移动并控制文本移动
scroll.config(command=text.yview)
# 文本移动同步滚动条移动
text.config(yscrollcommand=scroll.set)

# 插入文本
str = '''
七律·人民解放军占领南京
近现代·毛泽东
钟山风雨起苍黄,百万雄师过大江。
虎踞龙盘今胜昔,天翻地覆慨而慷。
宜将剩勇追穷寇,不可沽名学霸王。
天若有情天亦老,人间正道是沧桑。
'''
text.insert(tkinter.INSERT, str)
tk.mainloop()

效果如下:

总结

本文主要是Python tkinter Text控件介绍,简单示例及如何绑定滚动条。

作者:JSON_L

物联沃分享整理
物联沃-IOTWORD物联网 » Python tkinter教程(4) —— Text控件详解

发表回复