Forum
>>
Programmazione Python
>>
GUI
>>
Creare una matrice e pulsanti per cambiare il colore della matrice
Pagina: 1
Esegui il login per scrivere una risposta.
Pagina: 1
Scritto da GreyWolfFC |
2020-03-12 22:42:24 - Creare una matrice e pulsanti per cambiare il colore della matrice
|
Ciao a tutti sono nuovo di Python e della programmazione seguendo qualche piccolo corsetto ho capito a grandi linee il linguaggio e sto cercando di creare qualche semplice programmino cercando di scriverlo con meno righe possibile.
In questo caso ho provato ad partire da una tupla e un ciclo for per creare la matrice. Successivamente sono andato a creare il pulsante e qui la mia difficoltà è quella di utilizzare il comando per cambiare il colore della singola cella in quanto non riesco a richiamare la cella stessa (insomma ho creato le celle ma non so con quale nome). Ho provato anche a editare il nome ma forse sbaglio qualcosa. Vi copio il codice import tkinter as tk cards = ("AA", "AKs", "AQs", "AJs", "ATs", "A9s", "A8s", "A7s", "A6s", "A5s", "A4s", "A3s", "A2s", "AKo", "KK", "KQs", "KJs", "KTs", "K9s", "K8s", "K7s", "K6s", "K5s", "K4s", "K3s", "K2s", "AQo","KQo","QQ","QJs","QTs","Q9s","Q8s","Q7s","Q6s","Q5s","Q4s","Q3s", "Q2s","AJo","KJo","QJo","JJ","JTs","J9s","J8s","J7s","J6s","J5s","J4s","J3s","J2s","ATo","KTo","QTo","JTo","TT","T9s","T8s","T7s","T6s","T5s","T4s", "T3s","T2s","A9o","K9o","Q9o","J9o","T9o","99","98s","97s","96s","95s","94s","93s","92s","A8o","K8o","Q8o","J8o","T8o","98o","88","87s","86s","85s", "84s","83s","82s","A7o","K7o","Q7o","J7o","T7o","97o","87o","77","76s","75s","74s","73s","72s","A6o","K6o","Q6o","J6o","T6o","96o","86o","76o","66", "65s","64s","63s","62s","A5o","K5o","Q5o","J5o","T5o","95o","85o","75o","65o","55","54s","53s","52s","A4o","K4o","Q4o","J4o","T4o","94o","84o","74o", "64o","54o","44","43s","42s","A3o","K3o","Q3o","J3o","T3o","93o","83o","73o","63o","53o","43o","33","32s","A2o","K2o","Q2o","J2o","T2o","92o","82o", "72o","62o","52o","42o","32o","22") root = tk.Tk() x=0 y=0 z=0 for i in cards: if x==13 and y<12: y = y + 1 x=0 label = cardsz label = tk.Label(root, text=i, bg="black", fg="white", width=4, height=2) x=x+1 z=z+1 label.grid(row=y, column=x) def BUTTONclick(): AA.config(bg="red") BUTTON = tk.Button(root, text = "ROSSO", command=BUTTONclick) BUTTON.grid(row=2, column=15) root.mainloop() Grazie per i vostri consigli <3 |
|
Scritto da Niccolo Bartolacelli |
2020-06-08 17:43:43 - Re: Creare una matrice e pulsanti per cambiare il colore della matrice
|
Ciao,
Se ho capito bene tu vorresti creare un pulsante per ogni singola cella, giusto? Se fosse così dovresti creare una nuova lista dentro a cui mettere le varie celle: # crei la nuova lista all'inizio del programma, dopo la tupla celle = [] # dentro al ciclo for che usi per creare le celle le inserisci anche dentro alla lista for i in cards: # qui ci va il codice che serve per creare le celle label = tk.Label(*parametri che vuoi passare*) celle.append(label) #quando definisci la funzione per cambiare colore scrivi questo def buttonClick(): celle[*indice della cella*].configure(background="red")Altrimenti, se vuoi un pulsante per tutte le celle, usi un ciclo for: #quando definisci la funzione per cambiare colore scrivi questo def buttonClick(): for cella in celle: cella.configure(background="red")Fammi sapere se funziona, ciao --- Ultima modifica di Il Linuxino in data 2020-06-08 17:44:06 --- |
Pagina: 1
Esegui il login per scrivere una risposta.