Ich hoffe ihr könnt mir da ein wenig weiter helfen.
Ich arbeite bereits seit längerem an einem Tic Tac Toe:
Code: Alles auswählen
#Standarteinstellungen - keine Veraenderungen noetig
#
#
from Tkinter import *
import time
global anzeige
global masterstring
masterstring = " "
def Rechner (master):
global anzeige
global B1
global B2
global B3
global B4
global B5
global B6
global B7
global B8
global B9
frame = Frame(master)
frame.pack()
frame0 = Frame(frame)
frame0.pack(side=TOP)
frame1 = Frame(frame)
frame1.pack(side=TOP)
frame2 = Frame(frame)
frame2.pack(side=TOP)
frame3 = Frame(frame)
frame3.pack(side=TOP)
frame4 = Frame(frame)
frame4.pack(side=TOP)
frame5 = Frame(frame)
frame5.pack(side=TOP)
frame6 = Frame(frame)
frame6.pack(side=TOP)
frame7 = Frame(frame)
frame7.pack(side=TOP)
frame8 = Frame (frame)
frame8.pack(side=RIGHT)
frame9 = Frame (frame)
frame9.pack(side=LEFT)
frame10 = Frame (frame)
frame10.pack(side=LEFT)
B1 = Button(frame1, text="", bg="#F2FFFF", width=10, height=5, borderwidth = 5, command=eins)
B1.pack(side=LEFT)
B2 = Button(frame1, text=" ", bg="#F2FFFF", width=10, height=5, borderwidth = 5, command=zwei)
B2.pack(side=LEFT)
B3 = Button(frame1, text=" ", bg="#F2FFFF", width=10, height=5, borderwidth = 5, command=drei)
B3.pack(side=LEFT)
B4 = Button(frame2, text=" ", bg="#F2FFFF", width=10, height=5, borderwidth = 5, command=vier)
B4.pack(side=LEFT)
B5 = Button(frame2, text=" ", bg="#F2FFFF", width=10, height=5, relief="sunken", borderwidth = 5, command=fuenf)
B5.pack(side=LEFT)
B6 = Button(frame2, text=" ", bg="#F2FFFF", width=10, height=5, borderwidth = 5, command=sechs)
B6.pack(side=LEFT)
B7 = Button(frame3, text=" ", bg="#F2FFFF", width=10, height=5, borderwidth = 5, command=sieben)
B7.pack(side=LEFT)
B8 = Button(frame3, text=" ", bg="#F2FFFF", width=10, height=5, borderwidth = 5, command=acht)
B8.pack(side=LEFT)
B9 = Button(frame3, text=" ", bg="#F2FFFF", width=10, height=5, borderwidth = 5, command=neun)
B9.pack(side=LEFT)
B10 = Button(frame4, text="Spieler 1", width=10, height=5, borderwidth = 5, command=player1)
B10.pack(side=LEFT)
B11 = Button(frame4, text="Spieler 2", width=10, height=5, borderwidth = 5, command=player2)
B11.pack(side=LEFT)
def player1():
player = "X"
def player2():
player = "O"
global player
player = " "
def eins():
global B5
global B6
B1.configure(text=player, bg="#FF9999")
def zwei():
global B5
global B6
B2.configure(text=player, bg="#FF9999")
def drei():
global B5
global B6
B3.configure(text=player, bg="#FF9999")
def vier():
global B5
global B6
B4.configure(text=player, bg="#FF9999")
def fuenf():
global B5
global B6
B5.configure(text=player, bg="#FF9999")
def sechs():
global B5
global B6
B6.configure(text=player, bg="#FF9999")
def sieben():
global B5
global B6
B7.configure(text=player, bg="#FF9999")
def acht():
global B5
global B6
B8.configure(text=player, bg="#FF9999")
def neun():
global B5
global B6
B9.configure(text=player, bg="#FF9999")
#Sonstige Definitionen und Anpassungen
#
#
def add_to_string(pWert):
global masterstring
global anzeige
masterstring = masterstring + str(pWert)
anzeige.configure(text = masterstring)
print masterstring
root = Tk()
Rechner(root)
root.geometry( '240x300+250+250')
root.mainloop()
Er brauch erst garnicht erkennen ob man gewonnen oder verloren hat. (Falls es jemand weiß, kann er es natürlich dazuposten )
Das Grundgerüst wie es dort ist möchte ich auf jeden Fall beibehalten.
Ich wüsste nur gern was ich falsch gemacht habe oder was ich dafür noch ergänzen muss.
Außerdem wäre es ganz hilfreich nicht dauernt auf Spieler 1 und 2 zu klicken, sondern das der Computer von alleine zwischen X und O wechselt.
Aber wie gesagt: Am wichtigsten ist das die X und O's ersteinmal erscheinen.
Schon einmal vielen Dank fürs durchlesen.
Mfg
Infrared