1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
from tkinter import *
import matplotlib.pyplot as plt
class MainWindow():
def __init__(self, main):
self.canvas = Canvas(main, width=1000, height=750)
self.canvas.grid(row=0, column=0)
# images
self.my_images = []
self.my_images.append(PhotoImage(file = "image0.png"))
self.my_images.append(PhotoImage(file="image1.png"))
self.my_images.append(PhotoImage(file="image2.png"))
self.my_image_number = 2
# set first image on canvas
self.image_on_canvas = self.canvas.create_image(0, 0, anchor = NW, image = self.my_images[self.my_image_number])
# button to change image
self.button = Button(main, text="Change", command=self.onButton)
self.button.grid(row=1, column=0)
self.var = StringVar(main)
self.var.set("test1") # initial value
self.option = OptionMenu(main, self.var, "test1", "test2")
self.option.grid(row=2, column=0)
def createDiagram(self,adu, vir, cri, mar, dru):
# ...
def onButton(self):
if(self.var.get()=="test1"):
self.createDiagram('5','5','5','5','5')
self.my_images[2]=(PhotoImage(file="image2"))
self.canvas.itemconfig(self.image_on_canvas, image=self.my_images[2])
if(self.var.get()=="test2"):
self.canvas.itemconfig(self.image_on_canvas, image=self.my_images[1])
self.createDiagram('100','10','50','75','42')
root = Tk()
MainWindow(root)
root.mainloop() |
Partager