You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python的Tkinter中让句子内单个单词加粗

解决Tkinter中名字正常显示、姓氏加粗且自动对齐的问题

你不需要手动计算名字长度来定位,用两个Label结合布局管理器就能轻松实现需求,而且不管名字长度如何变化,姓氏都会自动紧跟在名字右侧。

实现步骤:

  • 用一个Label显示名字,使用默认字体
  • 用另一个Label显示姓氏,设置字体为加粗
  • 将两个Label放在同一个容器(比如Frame)中,用pack或grid布局让它们并排排列
  • 最后对容器使用place来固定整体位置,和你原来的需求一致

完整代码:

from tkinter import Tk, Label, Frame

root = Tk()
first_name = "John"
last_name = "Doe"

# 创建一个Frame来包裹两个标签,方便整体定位
name_frame = Frame(root)
name_frame.place(x=100, y=100)

# 名字标签:正常字体,末尾加空格和姓氏分隔
first_label = Label(name_frame, text=f"{first_name} ")
first_label.pack(side="left")

# 姓氏标签:设置加粗字体
last_label = Label(name_frame, text=last_name, font=("Arial", 10, "bold"))
last_label.pack(side="left")

root.mainloop()

补充说明:

  • pack(side="left")会让两个标签从左到右依次排列,自动适配名字的长度,不需要手动计算坐标
  • 如果需要调整字体大小,只需要修改font参数里的数值即可(比如把10改成12)
  • 如果你想用grid布局替代pack,可以把两个标签放在Frame的同一行不同列:
    first_label.grid(row=0, column=0)
    last_label.grid(row=0, column=1)
    

内容的提问来源于stack exchange,提问作者Michel Michaud

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 11:52:04