Forum
>>
Principianti
>>
Creazione Slider/Cursore scorrevole
Pagina: 1
Esegui il login per scrivere una risposta.
Pagina: 1
Scritto da trescon |
2020-07-10 14:31:46 - Creazione Slider/Cursore scorrevole
|
Buongiorno a tutti , io dovrei creare un cursore che scorre con cadenza di 1 secondo .... da 0 a 100 (x esempio).
Il mio problema non è tanto creare e dimensionare il cursore con il comando scale ma è coma fare in modo (ammesso che si possa) che al crescere di un contatore il cursore scorra la scala per darmi l'idea del passaggio del tempo. Ho provato a googlare ma non ho trovato esempi che fanno "muovere" il cursore da solo... Utilizzo Python 3.7 su Linux Grazie a chi potrà aiutarmi. ops, mi sono accorto ora che mi ero fissato con lo slider .... invece di valutare le Progress bar. --- Ultima modifica di trescon in data 2020-07-10 14:32:21 --- --- Ultima modifica di trescon in data 2020-07-10 14:56:09 --- ------
Alberto |
|
Scritto da RicPol |
2020-07-10 16:14:52 - Re: Creazione Slider/Cursore scorrevole
|
Sì ma se non dici quale gui framework stai usando, capisci bene che...
comunque, se il tuo gui framework supporta i timer, usa un timer che "pulsa" emettendo un evento ogni secondo, cattura l'evento emesso e fai avanzare il cursore di un tic. Probabilmente devi anche preoccuparti di disabilitare quel cursore, perché altrimenti l'utente potrebbe metterci le mani contemporaneamente. https://pythoninwindows.blogspot.com/p/i-miei-libri.html : i miei libri
https://pythoninwindows.blogspot.com : il mio blog |
|
Scritto da trescon |
2020-07-12 16:52:09 - Re: Creazione Slider/Cursore scorrevole
|
Grazie Ricpol ma sono ancora in alto mare.... e utilizzo tkinter ; ho provato a fare delle googlate ma tutte le le indicazioni che ho trovato sulle progressbar ... hanno esempi che non funzionano.
Mi sai indicare una guida / libreria che mi dia degli esempi ? Possibile che nella doc ufficiale non ci sia neppure un esempio ? Grazie e scusa per l'ignoranza --- Ultima modifica di trescon in data 2020-07-12 16:52:47 --- ------
Alberto |
|
Scritto da trescon |
2020-07-12 16:57:52 - Re: Creazione Slider/Cursore scorrevole
|
Ho provato anche a seguire le indicazioni qui riportate : https://progressbar-2.readthedocs.io/en/master/
ma gli esempi (ho provato solo il primo) non funzionano. Penso di avere dei problemi a capire come "lavora l'ecosistema Python" ! Grazie ------
Alberto |
|
Scritto da trescon |
2020-07-12 16:59:51 - Re: Creazione Slider/Cursore scorrevole
|
Io utilizzo tkinter e se utilizzo una progress bar .... non dovrei piu' avere di che preoccuparmi ....giusto ?
------
Alberto |
|
Scritto da RicPol |
2020-07-12 21:22:35 - Re: Creazione Slider/Cursore scorrevole
|
sì, sarebbe meglio iniziare a usare un gui framework serio... comunque vedo che anche tkinter ha un concetto limitato di timer... cerca in giro per root.after().
https://pythoninwindows.blogspot.com/p/i-miei-libri.html : i miei libri
https://pythoninwindows.blogspot.com : il mio blog |
|
Scritto da nuzzopippo |
2020-07-16 08:03:49 - Re: Creazione Slider/Cursore scorrevole
|
Ciao, letto ieri questo post, @Ripol ha dato l'indicazione "giusta", non so se @trescon abbia risolto ma mi son divertito a realizzare quanto richiesto ed ho pensato di postarlo ... sperando che il codice venga rappresentato correttamente, vedo che nel rendering dei post c'è qualche problema di cui debbo impratichirmi
import tkinter as tk from tkinter import ttk class MyApp(tk.Tk): def __init__(self): super().__init__() self.title('Pseudo cronometro') lbl = tk.Label(self, text='Minuti durata :') lbl.grid(row=0, column=0, sticky='ew') self.set_time = tk.Entry(self) self.set_time.grid(row=0, column=1, sticky='ew') self.prog_bar = ttk.Progressbar(self, mode='determinate') self.prog_bar['maximum'] = 60 self.prog_bar['value'] = 0 self.prog_bar.grid(row=1, column=0, columnspan=2, sticky='ew') self.dida = tk.Label(self, text='0', backgroun='yellow') self.dida.grid(row=2, column=0, columnspan=2, sticky='nsew') self.bt_num = tk.Button(self, text='Vai coi numeri', command=self._start) self.bt_num.grid(row=3, column=0, sticky='nsew') bt_close = tk.Button(self, text='Clicca me per chiudere', command=self.destroy) bt_close.grid(row=3, column=1, sticky='nsew') self.grid_rowconfigure(2, weight=1) self.grid_columnconfigure(0, weight=1) self.grid_columnconfigure(1, weight=1) self.minute = 0 self.seconds = 0 self.end = 0 self.update() def _start(self): ends = self.set_time.get() if not ends or not ends.isdigit(): return self.end = int(ends) self.dida.configure(text='0') self.set_time.configure(state='disabled') self.bt_num.configure(state='disabled') self.minute = 0 self.seconds = 0 self.update_data() def update_data(self): self.seconds += 1 self.prog_bar['value'] = self.seconds if self.seconds >= 60: self.minute += 1 self.seconds = 0 self.dida.configure(text=str(self.minute)) if self.minute < self.end: self.after(1000, self.update_data) else: self.set_time.configure(state='normal') self.bt_num.configure(state='normal') if __name__ == '__main__': app = MyApp() app.mainloop()Ciao ed un saluto a tutti Voi ... non ho trovato dove ci si possa presentare Fatti non foste a viver come bruti... |
Pagina: 1
Esegui il login per scrivere una risposta.