Найти - Пользователи
Полная версия: Tkinter изменение картинки с помощью radobutton
Начало » GUI » Tkinter изменение картинки с помощью radobutton
1
sligel
Доброго времени суток, знатоки подскажите что не так делаю.
Хочу добиться чтобы при нажатии на button 2 появлялась картинка 2,
и 1- картинка 1 соответственно. Версия питона 3.1.2
import tkinter

def weck():
if varRad.get()=="1":
global im
im=tkinter.PhotoImage(file="1_1.gif")
else:
global im
im=tkinter.PhotoImage(file="2_1.gif")




main=tkinter.Tk()

fr1=tkinter.Frame(main,relief="groove",bd=1)
fr1.place(x=10,y=10)

varRad=tkinter.StringVar()
varRad.set("1")

but1=tkinter.Radiobutton(fr1,text="1",variable=varRad,value="1",command=weck)
but1.grid(row=0,column=0,sticky="w")

but2=tkinter.Radiobutton(fr1,text="2",variable=varRad,value="2",command=weck)
but2.grid(row=1,column=0,sticky="w")

fr2=tkinter.Frame(main,height=100,width=100, relief="groove",bd=1)
fr2.place(x=50,y=10)

weck()
bild1=tkinter.Label(fr2)
bild1["image"]=im
bild1.pack()


main.mainloop()
igor.kaist
В вашем коде, вы, грубо говоря, “скопировали” картинку на виджет, после этого заменяете “оригинал” на другую картинку. Естественно ваша картинка на виджете останется прежней.
Как то так…
im1=tkinter.PhotoImage(file="1_1.gif")
im2=tkinter.PhotoImage(file="2_1.gif")
def weck():
if varRad.get()=="1":
bild1["image"]=im
else:
bild1["image"]=im2
Здесь каждый раз мы “копируем” нужную картинку на виджет
Разницу поняли?
sligel
Разницу понял. Помогло. Благодарствую
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB