Buttons in liste
Verfasst: Montag 27. Januar 2020, 20:58
Hey Leute,
Ich bin ziemlicher Anfänger und wollte "Tic Tac Toe" Programmieren aber mit einem noch nicht festgelegtem Feld.
Man kann also eine zahl am Anfang eintragen die Dan die Größe des Feldes Bestimmt. Die Verschieden Buttens Füge ich automatisch in eine liste Hinzu. Das Problem ist aber das ich dann nicht weiß , wenn ein Button angeklickt wird, welcher dieser ist.
Hier nochmal der Code:
def FelderErzeuge(x):
global Felder, Feld, i
print("X ist", x)
for d in range(x * x):
print(d)
Feld.append(Button(screen, text=" ",font='Times 20 bold', bg='gray', fg='black', height=4, width=8, command=lambda: btnClick(Feld[d]), command=pin()))
print("FeldErzeugen")
for x in range(num):
for y in range(num):
Feld.grid(row=x, column=y)
print("I ist ", i)
if i <= len(Feld):
i += 1
X ist die Größe die man selber dann festlegen kann.
btnClickt wird vorher Definiert und soll den text an der mitgegeben stelle ändern.
da die Variable aber gespeichert wird und nicht nur der derzeitige wert der Variable d, wird immer das Letzte Feld angesprochen.
würde mich echt freuen wenn einer lust und zeit hat mir zu helfen,
LG Hirschii
Ich bin ziemlicher Anfänger und wollte "Tic Tac Toe" Programmieren aber mit einem noch nicht festgelegtem Feld.
Man kann also eine zahl am Anfang eintragen die Dan die Größe des Feldes Bestimmt. Die Verschieden Buttens Füge ich automatisch in eine liste Hinzu. Das Problem ist aber das ich dann nicht weiß , wenn ein Button angeklickt wird, welcher dieser ist.
Hier nochmal der Code:
def FelderErzeuge(x):
global Felder, Feld, i
print("X ist", x)
for d in range(x * x):
print(d)
Feld.append(Button(screen, text=" ",font='Times 20 bold', bg='gray', fg='black', height=4, width=8, command=lambda: btnClick(Feld[d]), command=pin()))
print("FeldErzeugen")
for x in range(num):
for y in range(num):
Feld.grid(row=x, column=y)
print("I ist ", i)
if i <= len(Feld):
i += 1
X ist die Größe die man selber dann festlegen kann.
btnClickt wird vorher Definiert und soll den text an der mitgegeben stelle ändern.
da die Variable aber gespeichert wird und nicht nur der derzeitige wert der Variable d, wird immer das Letzte Feld angesprochen.
würde mich echt freuen wenn einer lust und zeit hat mir zu helfen,
LG Hirschii