【发布时间】:2017-09-06 15:46:30
【问题描述】:
我目前有一个带有背景图像和顶部按钮的画布。我正在尝试获取它,以便在单击某个按钮时,将在背景图像和按钮的顶部放置一个新图像。我现在拥有的是这样的:
import tkinter as tk
from xlrd import *
from PIL import Image, ImageTk
#GLOBAL VARIABLES
WIDTH = 720
HEIGHT = 960
#create window
window = tk.Tk()
window.title("NFL")
window.geometry("960x720")
#create canvas
canvas = tk.Canvas(window, width = WIDTH*2, height = HEIGHT*2)
canvas.pack()
#use NFL logo as background
nfl_logo_image = Image.open('nfl.jpg')
nfl_logo_image = nfl_logo_image.resize((HEIGHT, WIDTH), Image.ANTIALIAS)
nfl_logo = ImageTk.PhotoImage(nfl_logo_image)
canvas.create_image(0, 0, image = nfl_logo, anchor = 'nw')
#CAR button
def press_car_button():
canvas2 = tk.Canvas(window, width = WIDTH*2, height = HEIGHT*2)
canvas2.pack()
big_car_logo = Image.open('car.png')
big_car_logo = big_car_logo.resize((WIDTH, WIDTH), Image.ANTIALIAS)
big_car_image = ImageTk.PhotoImage(big_car_logo)
canvas2.create_image(0, 0, image = big_car_image, anchor = 'nw')
car_logo = Image.open('car.png')
car_logo = car_logo.resize((70,70), Image.ANTIALIAS)
car_image = ImageTk.PhotoImage(car_logo)
car_button = tk.Button(window, image = car_image, height = 70, width = 70, command = press_car_button)
car_button_window = canvas.create_window(720, 195, anchor = 'nw', window = car_button)
#run GUI
window.mainloop()
当我运行它时,背景图像和按钮都出现了,但是当我点击按钮时,什么也没有发生。
提前感谢您的帮助!
【问题讨论】:
标签: button tkinter background-image python-3.6 tkinter-canvas