python界面加背景图封装好直接用的代码
时间: 2024-02-16 20:02:39 浏览: 66
好的,以下是一个Python界面加背景图的封装好的代码,可以直接使用:
```python
import tkinter as tk
from PIL import ImageTk, Image
class MainWindow(tk.Frame):
def __init__(self, master=None, bg_image='bg.jpg'):
super().__init__(master)
self.master = master
self.master.title('My Application')
self.master.geometry('800x600')
self.create_widgets(bg_image)
def create_widgets(self, bg_image):
# 加载背景图片
img = Image.open(bg_image)
img = img.resize((800, 600), Image.ANTIALIAS) # 调整图片大小
self.image = ImageTk.PhotoImage(img)
# 创建画布
self.canvas = tk.Canvas(self.master, width=800, height=600, bd=0, highlightthickness=0)
self.canvas.pack()
self.canvas.create_image(400, 300, image=self.image)
# 创建其他控件
self.label = tk.Label(self.canvas, text='Hello, world!', font=('Arial', 24))
self.label.place(x=400, y=100, anchor='center')
self.button = tk.Button(self.canvas, text='Click me', font=('Arial', 18), command=self.on_button_click)
self.button.place(x=400, y=500, anchor='center')
def on_button_click(self):
print('Button clicked.')
if __name__ == '__main__':
root = tk.Tk()
app = MainWindow(root)
app.mainloop()
```
这个代码中,我们使用了tkinter库和Pillow库。在MainWindow类的构造函数中,我们创建了一个画布,并在画布上加载了背景图片。接着,我们创建了一个Label控件和一个Button控件,并将它们放置在画布上。最后,我们运行了主程序。
你可以将bg.jpg替换成你自己的背景图片,然后运行这个代码,就可以看到一个带有背景图片的界面了。
阅读全文