记录python-tkinter包 Text控件中的更改文字颜色大小操作

 

利用tkinter 中的Text可以插入多行文字信息,如下图所示,主要利用了text.insert()来进行。

代码:

import tkinter as tk

root = tk.Tk()
root.geometry('300x400')
root.title('测试')

text = tk.Text(root,width=20,height=20)
text.pack()

char = ['你好','你好呀','你今天真好看','谢谢'] #插入到text中
for i in range(4):
    a = str(i+1)+'.0'
    text.insert(a,char[i]+'\n')

root.mainloop()

                                                 

但是这样并没有更改,Text中的文字效果,利用text.tag_add()和text.tag_config()来进行此次操作。

import tkinter as tk
import tkinter.font as tf
root = tk.Tk()
root.geometry('300x400')
root.title('测试')

text = tk.Text(root,width=20,height=20)
text.pack()

char = ['你好','你好呀','你今天真好看','谢谢'] #插入到text中
####更改部分##########
ft = tf.Font(family='微软雅黑',size=10) ###有很多参数
text.tag_add('tag',a) #申明一个tag,在a位置使用
text.tag_config('tag',foreground='red',font =ft ) #设置tag即插入文字的大小,颜色等

text.tag_add('tag_1',a1)
text.tag_config('tag_1',foreground = 'blue',background='pink',font = ft)
#foreground字体颜色
#font字体样式,大小等
#background 背景色

for i in range(4):
    if i%2 == 0 :
        a = str(i+1)+'.0'
        text.insert(a,char[i]+'\n','tag') #申明使用tag中的设置
    else :
        a1 = str(i+1)+'.0'
        text.insert(a1,char[i]+'\n','tag_1') #申明使用tag__1中的设置
####更改部分##########
root.mainloop()

效果如图:

                                                           

text.tag_config()中的其他参数,见 官网http://effbot.org/tkinterbook/text.htm

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Foneone

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值