from Tkinter import*
class sudoku:
def __init__(self, juego):
try:
for i in range(9):
for j in range(9):
if int(juego[i][j])>=0 or int(juego[i][j])<=9:
juego[i][j] = int(juego[i][j])
else:
raise ValueError("Dato Erroneo")
except:
print('Error')
self.__juego=juego
self.__solucion=[]
def getJuego(self):
return self.__juego
print(self.__juego)
def getSolucion(self, juego):
self.__solucion=juego
def getNumero(self,i,j):
return self.__juego[i][j]==n
def setNumero(self):
return self.__solucion
def Verificar(self,fil,col,n):
fil=int(fila)
col=int(columna)
if self.getNumero(fil,col)==n:
return True
if self.getNumero(fil,col)!=0:
return False
for c in range(0,9):
if self.__juego[fil][c]==n:
return X
for l in range(0,9):
if self.__juego[l][col]==n:
return X
lm=int(fil/3)
cm=int(col/3)
for l in range(lm*3,(cm+1)*3):
for c in range(cm*3,(cm+1)*3):
if l >=9 or c>=9:
continue
if self.__juego[l][c]==n:
print('l=',l,'c=',c,'numero=',self.grtNumero(l,c),'n')
return False
return True
def Ventana(Vent):
Vent=Tk()
Z=[[],[],[],[],[],[],[],[],[],[]]
for i in range(Z):
我的问题是,如何为此程序创建窗口。换句话说,我如何在那里可视化数独和写数字。
答案 0 :(得分:1)
从广义上讲,您可以为拼图中的每个方块创建一个Entry
小部件的实例。然后,您应该使用grid
几何管理器将小部件放在网格中。您可以在循环中为嵌套在行的循环中的列执行创建和布局。
您可以使用insert
和get
方法在每个小部件中插入和检索数据。或者,您可以将Tkinter.IntVar
变量与每个条目相关联,然后使用get
和set
方法来获取和设置值。