Forum >> Programmazione Python >> GUI >> Cambio testo pulsante dopo averlo cliccato

Pagina: 1

Buonasera a tutti, vi espongo il mio problema, premetto di essere nuovo in python quindi spero di non fare cappellate enormi.



Windows 10, Idle, Python 3.7




Devo sviluppare un'interfaccia grafica che mi faccia giocare al tris, ma in versione leggermente modificata, ovvero prendendo come esempio una tabella 3x3 su cui ho dunque 9 spazi per i due giocatori, dopo che entrambi i giocatori hanno posizionato i propri 3 pioni (numero di pioni varia in base alla dimensione della tabella) devo semplicemente spostare uno dei 3 già piazzati invece di piazzarne uno nuovo.




Senza interfaccia grafica riesco a fare tutto ciò, il problema sorge quando devo usare l'interfaccia grafica e quindi magari utilizzare dei pulsanti sui quali scrivere.




Sono riuscito a creare una matrice di pulsanti che varia in base alla dimensione scelta dall'utente con il metodo che è riportato qui sotto:

 win = Tk()
    win.title("Tableu de jeu")
    Grid.rowconfigure(win, 0, weight=1)
    Grid.columnconfigure(win, 0, weight=1)
    win.geometry("500x500+100+100")
    frame=Frame(win)
    frame.grid(row=0, column=0, sticky=N+S+E+W)
    for i in range(size):
        Grid.rowconfigure(frame, i, weight=1)
        for j in range(size):
            Grid.columnconfigure(frame, j, weight=1)
            btn = Button(frame, padx=4, pady=4) 
            btn.grid(row=i, column=j, sticky=N+S+E+W)
            
    win.mainloop()
creo la matrice di pulsanti senza problemi per ogni dimensione.




Ora il mio problema è il seguente, devo inserire una X o una O, oppure una B o una N sui pulsanti, al seguito del click in base al giocatore che sta giocando, o eventualmente, se il computer gioca contro un player umano, il programma deve fare la sua scelta e quindi piazzare un testo sul pulsante autonomamente. Con un solo testo ed un solo pulsante tutto è più semplice, ma dovendo inserire diverse scelte (in questo caso B o N) su un numero di pulsanti che varia in base alla scelta dell'utente come posso sviluppare la soluzione?








Pagina: 1



Esegui il login per scrivere una risposta.