我是初學者程序員!我的程序不是一流的。我只需要弄清楚如何調整我要調用的兩個窗口:TicWindow和ScoreBoard。在我的ScoreBoard類下面,我編寫了self.board = TicWindow()& self.board.geometry(「500x500 + 300 + 300」)。我已經閱讀過,調整窗口大小需要調用一個根窗口,這是我的TicWindow。我知道這是錯誤的,因爲它看起來像是在錯誤的地方,它會打開第三個調整大小的窗口。任何幫助表示讚賞!在Python中Tkinter:我可以使用什麼選項來調整窗口大小?
import Tkinter
class TicWindow(Tkinter.Tk):
def __init__(self):
Tkinter.Tk.__init__(self)
self.squares = []
self.turn = 0
for r in range(3):
for c in range(3):
b = Square(self).grid(row=r,column=c)
self.squares.append(b)
def turn(self):
return self.turn
def changeTurn(self):
if (self.turn == 0):
self.turn = 1
else:
self.turn = 0
class Square(Tkinter.Button):
def __init__(self,parent):
Tkinter.Button.__init__(self,parent, text=" ", command=self.changeButtonText)
self.canClick = True
def changeButtonText(self):
if (self.master.turn == 0) and (self.canClick == True):
self.config(text = "X")
elif (self.master.turn == 1) and (self.canClick == True):
self.config(text = "O")
self.master.changeTurn()
self.hasBeenClicked()
def canClick(self):
return self.canClick
def hasBeenClicked(self):
self.canClick = False
class ScoreBoard(Tkinter.Tk):
def __init__(self):
Tkinter.Tk.__init__(self)
self.board = Tkinter.Label(self, text = "No Score Yet").pack()
self.board = TicWindow()
self.board.geometry("500x500+300+300")
top = TicWindow()
scoreboard = ScoreBoard()
top.mainloop()
提示:您可以通過在命令行 – Kevin
順便說一句運行'蟒蛇--version'驗證你所使用的Python的版本,我想修正你的縮進(你的'class'和它的'def's處於同一級別),但看起來還是有一堆問題,例如。 'self.squares = []'比之前的行縮進得更遠。你能否證實這裏顯示的代碼正是你本地的代碼? – Kevin
不是。當我把它放在我的問題中時,縮進被搞砸了。抱歉。我一定會修復它!謝謝 – user3271467