可以使用PIL库中的ImageTk和Image来加载图片并在canvas上显示。

步骤如下:

  1. 导入PIL库中的ImageTk和Image模块。

  2. 使用Image模块中的open()方法打开图片,得到一个Image对象。

  3. 使用ImageTk模块中的PhotoImage()方法将Image对象转换为PhotoImage对象。

  4. 在canvas上使用create_image()方法添加图片。

修改后的代码如下:

import tkinter as tk from PIL import ImageTk, Image

al = [] _white = [] _black = [] stop = 0 boss = True black = True

def init(): global black, window, canvas

window = tk.Tk()
window.title('五子棋')
window.geometry('850x600')  # ()内写*报错

# 加载背景图片
img = Image.open('bg.jpg')  # 打开图片
img = img.resize((850, 600), Image.ANTIALIAS)  # 调整图片尺寸
bg = ImageTk.PhotoImage(img)  # 将Image对象转换为PhotoImage对象

canvas = tk.Canvas(window, height=600, width=850)
canvas.create_image(0, 0, anchor='nw', image=bg)  # 在canvas上添加背景图片

for i in range(1, 16):
    line = canvas.create_line(i * 40, 20, i * 40, 580)
    line = canvas.create_line(40, i * 40 - 20, 600, i * 40 - 20)
    rect = canvas.create_rectangle(35, 15, 605, 585)  # 边框
    rect = canvas.create_rectangle(34, 14, 606, 586)  # 加粗
    oval = canvas.create_oval(157, 137, 163, 143, fill='black')
    oval = canvas.create_oval(157, 457, 163, 463, fill='black')
    oval = canvas.create_oval(477, 137, 483, 143, fill='black')
    oval = canvas.create_oval(477, 457, 483, 463, fill='black')
    oval = canvas.create_oval(315, 296, 325, 304, fill='black')

canvas.pack()

init() window.mainloop(


原文地址: https://www.cveoy.top/t/topic/fDoi 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录