Ich arbeite an meinem letzten Projekt für meine Einführung in die CS-Klasse und entschied mich, Connect Four mit tkinter von Python zu erstellen. Ich habe mein Board mit tkinter's create_rectangle() gezeichnet, aber jetzt bin ich dran, wie ich meine Spalten beschriften/aufrufen/verweisen kann. Mein Raster ist 700x600 Pixel mit 7 Spalten und 6 Zeilen. Um die Stücke während des Spiels zu verfolgen, muss ich sehen, wo sie sind, damit ich eine boolesche Aussage machen kann, ob Spieler 1 oder Spieler 2 gewonnen hat. Deshalb würde ich die Koordinaten verwenden oder benennen Sie es als:Was setze ich meine Spalten wie in Connect Four (mit tkinter/Python gemacht)?
self.main_window.geometry("700x640")
self.top_frame = tkinter.Frame(self.main_window)
self.top_frame.pack(side='top')
self.bottom_frame = tkinter.Frame(self.main_window)
self.bottom_frame.pack(side='bottom')
# Creating the board
self.board = tkinter.Canvas(self.main_window, width = 700, height=600)
self.board.pack(anchor='nw')
# A rectangle is made (top left coord., bottom right coord.)
# Fill color = #Hexnumber
self.board.create_rectangle(0, 0, 700, 600, fill="#1E90FF")
# Line is drawn after rectangle cause it is drawn ONTOP (order matters)
self.board.create_line(0, 0, 0, 700)
self.board.create_line(0, 0, 600, 0)
# Drawn in rows
for rows in range(100, 600, 100):
self.board.create_line(0, rows, 700, rows, fill="")
# Drawn in columns
for columns in range(100, 700, 100):
self.board.create_line(columns, 0, columns, 600, fill="")
# Drawn in circles
for i in range(0, 700, 100):
for k in range(0, 700, 100):
self.board.create_oval(i, k, i+100, k+100, fill="")
# Set up for circle pieces
self.yellow_piece = tkinter.PhotoImage(file="piece1round.gif")
self.black_piece = tkinter.PhotoImage(file="piece2round.gif")
self.empty_piece = tkinter.PhotoImage(file="empty.gif")
# Created a button & placing them at the bottom left of the window frame
self.buttonOne = tkinter.Button(self.bottom_frame, width=13, text="Column 1", command = "?")
self.buttonOne.pack(side = 'left')
self.buttonTwo = tkinter.Button(self.bottom_frame, width=13, text="Column2")
self.buttonTwo.pack(side='left')
self.buttonThree = tkinter.Button(self.bottom_frame, width=13, text="Column3")
self.buttonThree.pack(side='left')
self.buttonFour = tkinter.Button(self.bottom_frame, width=13, text="Column4")
self.buttonFour.pack(side='left')
self.buttonFive = tkinter.Button(self.bottom_frame, width=13, text="Column5")
self.buttonFive.pack(side='left')
self.buttonSix = tkinter.Button(self.bottom_frame, width=13, text="Column6")
self.buttonSix.pack(side='left')
self.buttonSeven = tkinter.Button(self.bottom_frame, width=13, text="Column7")
self.buttonSeven.pack(side='left')
# Set up values for columns and rows
self.board_width = 700
self.board_row = 600
self.column1 = "?"
Bitte formatieren Sie Ihren Code – Li357
Was ich nicht enthalten war mein Startbildschirm, aber es hatte meine Import tkinter, und so. Ich hoffe, das ist organisierter; und ein Foto des Rasters, das ich gemacht habe, ist beigefügt –