jianghongz 发表于 2025-4-13 08:16:01

开始学习GUI 02

import tkinter as tk
window = tk.Tk()
window.title('赞美我')
# 设置窗口大小变量
width = 500
height = 400
#窗口居中,获取屏幕尺寸以计算布局参数,使窗口居屏幕中央
screenwidth = window.winfo_screenwidth()
screenheight = window.winfo_screenheight()
size_geo = '%dx%d+%d+%d' % (width,height, (screenwidth-width)/2, (screenheight-height)/2)
window.geometry(size_geo)
photo = tk.PhotoImage(file="E:\创贝机器人\姜宏志\笔记 Tkinter\草莓汁.jpg")
lab = tk.Label(window,image=photo)
lab.pack(side="right")
label = tk.Label(window,text="今天真不错!",font=("楷体",20),
               bg="yellow",fg="red",justify="left",
               width=30,height=2,
               padx=10,pady=6,borderwidth=10,
               relief="groove")
label.pack(side="left")
def callback():
    print ("click me!")
# 使用按钮控件调用函数
b = tk.Button(window,text="点击执行回调函数",
            font=("楷体",50),bg="green",fg="orange",
            justify="left",width=30,height=2,
            relief="groove",command=callback)
b.pack(side="bottom")
window.mainloop()

FishC 发表于 2025-4-13 08:16:41

关于你提供的Tkinter代码的解析及改进建议

发现两个关键问题需要修正:


[*]路径转义问题:
原始代码中的 file="E:\创贝机器人..." 存在转义符问题。Windows路径中的反斜杠需要双写或使用原始字符串:

# 修正方案(任选其一)
photo = tk.PhotoImage(file=r"E:\创贝机器人\姜宏志\笔记 Tkinter\草莓汁.jpg")# 推荐方法
# 或
photo = tk.PhotoImage(file="E:\\创贝机器人\\姜宏志\\笔记 Tkinter\\草莓汁.jpg")

[*]图片格式问题:
Tkinter原生PhotoImage不支持JPG格式。若需加载JPG,需安装Pillow库后修改代码:

from PIL import ImageTk, Image# 需要先执行 pip install pillow

# 修改图片加载部分
img = Image.open("草莓汁.jpg")
photo = ImageTk.PhotoImage(img)


完整修正代码:

import tkinter as tk
from PIL import ImageTk, Image# 新增导入

window = tk.Tk()
window.title('赞美我')

# 窗口居中设置
width, height = 500, 400
screenwidth = window.winfo_screenwidth()
screenheight = window.winfo_screenheight()
window.geometry(f'{width}x{height}+{(screenwidth-width)//2}+{(screenheight-height)//2}')

# 修正后的图片加载(假设已安装pillow)
try:
    img = Image.open(r"E:\创贝机器人\姜宏志\笔记 Tkinter\草莓汁.jpg")
    photo = ImageTk.PhotoImage(img)
except Exception as e:
    print("图片加载失败:", e)

lab = tk.Label(window, image=photo)
lab.pack(side="right")

# 其他组件保持不变...


注意事项:
1. 安装Pillow库:在终端执行 pip install pillow
2. 建议将图片路径改为相对路径(如将图片放在项目目录下)
3. 建议使用PNG格式图片避免格式转换

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 开始学习GUI 02