小白的提问
tkinter吧
全部回复
仅看楼主
level 1
如何给窗体设置背景图片?就是想把组件放在被设置了背景图片的窗体上组件怎么布局
2023年08月01日 02点08分 1
level 9
tkinter的窗口不能直接设置背景图片,
需要首先创建一个Canvas并加入背景图片,放在窗口上,
然后创建其他的控件,再用place方法放置,
这样新创建的控件会自动层叠在Canvas的上面,Canvas成为了最底层。
代码:
import tkinter as tk
import tkinter.messagebox as msgbox
from PIL import Image,ImageTk
root=tk.Tk()
root.title("窗体背景图")
cv=tk.Canvas(root)
cv.pack(expand=True,fill=tk.BOTH)
# 调用windows自带图片
pic=Image.open("C:\Windows\Web\Wallpaper\Theme1\\img1.jpg","r").resize((800,600))
imtk=ImageTk.PhotoImage(pic)
x,y=250,200
root.geometry('%dx%d+%d+%d'%(pic.width,pic.height,x,y))
cv.create_image(0,0,image=imtk,anchor=tk.NW)
tk.Entry(root).place(x=400,y=340)
tk.Entry(root).place(x=400,y=370)
tk.Button(root,text="登录").place(x=400,y=400)
root.mainloop()
2023年08月05日 05点08分 2
这样就可以。因为tkinter的Tk对象没有背景图的属性。
2023年08月09日 08点08分
@tbiy_7330 谢谢,还在高中阶段。对这个感兴趣闲下来学一学
2023年08月21日 11点08分
@tbiy_7330 import tkinter.messagebox as msgbox这句是什么意思?
2023年08月21日 11点08分
@贴吧用户_7e6JZ55 导入tkinter的消息框模块
2023年08月30日 14点08分
1