鱼C论坛

 找回密码
 立即注册
查看: 139|回复: 1

[学习笔记] 开始学习GUI 02

[复制链接]
发表于 2025-4-13 08:16:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
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()

评分

参与人数 1荣誉 +1 鱼币 +1 收起 理由
player-none + 1 + 1 无条件支持楼主!

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2025-4-13 08:16:41 | 显示全部楼层
关于你提供的Tkinter代码的解析及改进建议

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

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

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

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

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

    2. # 修改图片加载部分
    3. img = Image.open("草莓汁.jpg")
    4. photo = ImageTk.PhotoImage(img)
    复制代码



完整修正代码:

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

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

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

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

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

  18. # 其他组件保持不变...
复制代码


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

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-12 16:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表