python - 使用迭代时在 tkinter textarea 小部件中设置多种字体
问题描述
我目前正在 tkinter 中创建一个项目,其中涉及使用 textarea 小部件。我想在文本区域小部件中设置多种字体,但唯一的问题是,我正在使用迭代,所以我无法弄清楚。
与我有关的代码:
for i in range(len(news_list)):
txtarea.configure(font=("Bahnschrift", 20) )
txtarea.insert(END, news_list[i]["title"] + "\n\n" )
txtarea.configure(font=("Bahnschrift", 20) )
txtarea.insert(END, "Description:" + str(news_list[i]["description"]) + "\n\n" )
txtarea.insert(END, "Read More at:" + str(news_list[i]["url"]) + "\n\n" )
txtarea.insert(END , "--------------------------------- " + "\n")
期望的输出:
看看不同的行有不同的字体吗?
有人可以帮我解决这个问题吗?另外,由于我是 Stackoverflow 的新手,欢迎您指出我所犯的错误。
解决方案
tag
为每一段文本定义:
import tkinter as tk
TEXT = [("mountain", 'title'),
("[maʊntən]", "monospaces"),
("a large natural elevation of the earth's surface rising abruptly from the surrounding level", 'normal')]
root = tk.Tk()
t = tk.Text(root)
t.pack()
t.tag_configure("title", font=("Bahnschrift bold", 20))
t.tag_configure("monospaces", font=("Lucida", 12))
t.tag_configure("normal", font=("Arial", 14))
for text in TEXT:
t.insert(tk.END, f'{text[0]}\n', text[1])
tk.mainloop()
输出:
推荐阅读
- javascript - Vue.js 中的加载栏
- c# - 来自包含跨度的行的 C# Selenium XPath 数据
- java - 传播级联删除引发外键约束失败
- jquery - 发布时无法加载日历,在本地环境中工作
- javascript - 打字稿:即使元素已加载,document.getElementById() 也会返回 null
- asp.net - Asp.net MVC 强制更新包中的 javascript 文件
- java - spring security spring session,session不存储在spring session中
- javascript - 允许在不关闭模式的情况下从外部单击?
- python - 减去熊猫中的日期时间
- hadoop - 找不到类“org.apache.hadoop.hive.kafka.KafkaStorageHandler”