Forum
>>
Programmazione Python
>>
GUI
>>
Domanda per Daniele
Pagina: Indietro 1 2
Esegui il login per scrivere una risposta.
Scritto da pypy pypy |
2018-10-25 08:32:33 - Re: Domanda per Daniele
|
come succede spesso la notte porta consigli e stamani fatto una prova ed ho "aggirato" il problema
in pratica poco fa ho inserito il codice della funzione direttamente nel ciclo for ed il tutto funziona come mi aspettavo che funzionasse inizialmente import tkinter as tk from PIL import ImageTk, Image import time # def change(): # img = ImageTk.PhotoImage(Image.open(str(n) + ".jpg")) # lbl.configure(image=img) # lbl.pack() # root.update() # time.sleep(1) root = tk.Tk() lbl = tk.Label(root) for n in range(1, 5): # change() img = ImageTk.PhotoImage(Image.open(str(n) + ".jpg")) lbl.configure(image=img) lbl.pack() root.update() time.sleep(1) root.mainloop()ps beh in effetti non ritorna nessun errore, ma rimane comunque la domanda: come mai se nel ciclo for inserisco "solo" il nome della funzione e decommento la stessa l'ultima finestra tkinter rimane senza immagine? --- Ultima modifica di pypy in data 2018-10-25 08:32:55 --- |
|
Scritto da Daniele aka Palmux |
2018-10-25 09:46:48 - Re: Domanda per Daniele
|
Perché per come hai realizzato il codice, alla funzione non passi i dati necessari per completare l'operazione. Fai un esercizio di stile e ripensa il codice con la modifica che ho suggerito prima, cioè passare alla funzione il nome dell'immagine da cambiare.
Prova, sperimenta, sporcati le mani scrivendo del rude codice e torna vittorioso. Cya |
|
Scritto da pypy pypy |
2018-10-25 10:44:06 - Re: Domanda per Daniele
|
Daniele grazie come sempre della risposta
sottolineo il fatto che il codice anche se inserito nel "def" funziona infatti le immagini cambiano ma dopo l'ultima la finestra tk compare vuota |
|
Scritto da snoop |
2018-10-25 12:00:17 - Re: Domanda per Daniele
|
Io inserendo le immagini in una lista l ultima immagine mi compare vi posto il mio codice tra poco
|
|
Scritto da snoop |
2018-10-25 12:01:46 - Re: Domanda per Daniele
|
Comunque la prima immagine dove definisco la label la tengo fuori dal ciclo for più specificatelamente prima del ciclo e così mi esce l ultima immagine prova così pypy
|
|
Scritto da pypy pypy |
2018-10-25 23:51:42 - Re: Domanda per Daniele
|
ciao snoop
il codice che ho postato all'interno del ciclo for funziona perfettamente è il codice commentato all'interno della funzione che non capisco come mai anche se è lo stesso codice si ha un risultato diverso |
|
Scritto da snoop |
2018-10-26 13:23:18 - Re: Domanda per Daniele
|
app = Tk() lm = Label() def change_image(): tempd = Image.open("teo.jpg") photo2 = ImageTk.PhotoImage(tempd) imp.config(image=photo2) imp.image = photo2 temp = Image.open("file01.jpg") photo = ImageTk.PhotoImage(temp) imp = Label(app,image=photo) change_image() imp.pack() app.mainloop() |
|
Scritto da snoop |
2018-10-26 13:26:03 - Re: Domanda per Daniele
|
Io prima configuro la pfima immagine nella label e poi dopo inizio il ciclo for iterando le immagini dalla seconda fino alla fine attraverso il metodo change() con label.configure tu invece sia per la prima immagine e sia per le altre utilizzi label.configure non ti posto il codice completo perché scrivo da smartphone mentre lo script è sul pc
|
|
Scritto da pypy pypy |
2018-10-26 16:05:38 - Re: Domanda per Daniele
|
ma è sempre lo stesso snoop, il problema persiste.
non ho capito se sia update oppure altro che crea il problema provo ma non trovo la soluzione chissà forse è normale cosi? --- Ultima modifica di pypy in data 2018-10-26 16:09:12 --- |
|
Scritto da pypy pypy |
2018-10-28 08:04:47 - Re: Domanda per Daniele
|
nessuna idea o suggerimento ?
--- Ultima modifica di pypy in data 2018-10-28 08:13:49 --- |
Pagina: Indietro 1 2
Esegui il login per scrivere una risposta.