Zdravím,
potřebuji poradit, jak zajistit aby se, když kliknu na button, tak aby se na tom buttonu zobrazila figurka jezdce (♞) a aby se na těch buttonech, které může jezdec pomocí šachových pravidel ohrožovat zobrazil křížek.
from Tkinter import *
hlavni = Tk()
seznamTlacitek = []
pocetRadku = 8
pocetSloupcu = 8
for poradi in range(pocetRadku*pocetSloupcu):
tlacitko = Button(text= , width=velikost*2, height=velikost)
radek = poradi / pocetSloupcu
sloupec = poradi % pocetSloupcu
tlacitko.grid(row=radek, column=sloupec)
seznamTlacitek.append(tlacitko)
tlacitko.pack()
hlavni.mainloop()
def klik(udalost):
print udalost.widget, udalost.widget["text"],
udalost.widget["text"] = "♞"
Pozice, které může jezdec ohrožovat
A1 {B3;C2}
A2 {C1;C3;B4}
A3 {C4;C2;B5;B1}
A4 {C5;B6;C3;B2}
A5 {C6;B7;C4;B3}
A6 {B8;C7;C5;B4}
A7 {C8;C6;B5}
A8 {C7;B6}
B1 {A3;C3;D2}
B2 {A4;C4;D3;D1}
B3 {C5;A5;D4;D2;C1;A1}
B4 {A6;C6;D5;D3;A2;C2}
B5 {A7;C7;D6;D4;A3;C3}
B6 {A8;C8;D7;D5;A4;C4}
B7 {D8;D6;A5;C5}
B8 {D7;A6;C6}
C1 {A2;B3;D3;E2}
C2 {A3;A1;B4;D4;E3;E1}
C3 {A4;A2;B5;D5;E4;E2;B1;D1}
C4 {A5;A3;B6;D6;E5;E3;B2;D2}
C5 {A6;A4;B7;D7;E6;E4;B3;D3}
C6 {A7;A5;B8;D8;E7;E5;B4;D4}
C7 {A8;A6;E8;E6;B5;D5}
C8 {A7;E7;B6;D6}
D1 {B2;F2;C3;E3}
D2 {B3;B1;C4;E4;F3;F1}
D3 {B4;B2;F4;F2;C5;E5;C1;E1}
D4 {B5;B3;F5;F3;C2;E2;C6;E6}
D5 {B6;B4;F6;F4;C3;E3;C7;E7}
D6 {B7;B5;F7;F5;C8;E8;C4;E4}
D7 {B8;B6;F8;F6;C5;E5}
D8 {B7;F7;C6;E6}
E1 {C2;G2;D3;F3}
E2 {D4;F4;C3;C1;G3;G1}
E3 {D5;F5;D1;F1;C4;C2;G4;G2}
E4 {D6;F6;D2;F2;C5;C3;G5;G3}
E5 {D7;F7;D3;F3;C6;C4;G6;G4}
E6 {D8;F8;D4;F4;G7;G5;C7;C5}
E7 {C8;C6;G8;G6;D5;F5}
E8 {C7;G7;D6;F6}
F1 {D2;H2;E3;G3}
F2 {D3;D1;E4;G4;H1;H3}
F3 {E1;G1;E5;G5;D4;D2;H4;H2}
F4 {E2;G2;E6;G6;D5;D3;H5;H3}
F5 {E3;G3;E7;G7;D6;D4;H6;H4}
F6 {E4;G4;E8;G8;D7;D5;H7;H5}
F7 {D8;D6;H8;H6;E5;G5}
F8 {E6;G6;D7;H7}
G1 {E2;F3;H3}
G2 {E3;H4;F4;E1}
G3 {E4;E2;F5;H5;F1;H1}
G4 {E5;E3;F6;H6;F2;H2}
G5 {E6;E4;F7;H7;F3;H3}
G6 {E7;E5;F8;H8;F4;H4}
G7 {E8;E6;F5;H5}
G8 {E7;F6;H6}
H1 {F2;G3}
H2 {F1;F3;G4}
H3 {F2;F4;G5;G1}
H4 {F3;F5;G6;G2}
H5 {F4;F6;G7;G3}
H6 {F5;F7;G8;G4}
H7 {F8;F6;G5}
H8 {F7;G6}
Děkuji za odpověď