dragov 发表于 2026-7-27 19:20:04

Tkinter 能否将两个按钮中的图形靠左对齐?



from tkinter import *
import random
root = Tk()
m=PhotoImage(file="d://zz//a.png")
root.iconphoto(True,m)
n=m.subsample(2,2)
Button(root,image=m).pack()
Button(root,image=n,justify="left").pack()
mainloop()

FishC 发表于 2026-7-27 19:20:16

问题分析
您希望将两个按钮中的图形(图片)靠左对齐。当前代码中,justify="left" 只影响按钮内文本的对齐方式,对图片无效。要让图片在按钮内部靠左,应使用 anchor="w"(w 代表西方向,即左对齐)。

解决方案
在两个 Button 创建时均添加 anchor="w" 参数。同时,如果按钮的宽度默认与图片相同(无法显示左对齐效果),可以设置一个稍大的宽度(例如 width=100)来明显看到图片靠左。

示例代码
from tkinter import *
import random

root = Tk()
m = PhotoImage(file="d://zz//a.png")
root.iconphoto(True, m)
n = m.subsample(2, 2)

# 两个按钮的图片均靠左对齐,并适当增加按钮宽度以便观察效果
Button(root, image=m, anchor="w", width=150).pack()
Button(root, image=n, anchor="w", width=150).pack()

mainloop()

说明
- anchor="w" 将按钮内容(图片)固定在左侧。
- width=150 是可选的,仅用于演示左对齐效果;若按钮宽度小于图片宽度,左对齐依然生效,但图片可能部分超出按钮边界。
- 若您只关心按钮内部图片左对齐,可忽略宽度设置,但默认图片会充满按钮,此时左对齐与居中对齐在外观上无区别。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: Tkinter 能否将两个按钮中的图形靠左对齐?