한 번 질문을 게시하여 매우 모호했습니다. 그래서 일부 연구 및 자습서를 마친 후에 더 자세히 설명하기로했습니다. StackOverflow에서 예제를 살펴 보았습니다. 그리고 저는 그것들을 조합하여 제가 유리한 결과를 얻을 수 있는지 알아 보았습니다. (저작권 :! 코드는 내되지 않습니다) :Tkinter -Python3 : 목록의 리터럴 값을 목록의 정수 값으로 바꿉니다. UPDATE
나는 사람이 또한 프로그램에 사용되는 규칙의 이름 숫자를 입력 할 수 있도록 여기에
레이아웃입니다.
저는 8 열의 보드처럼 보이는 1 행의 직사각형을 가지고 있습니다. 클릭하면 각 사각형이 다른 색상으로 바뀝니다. 사람이 규칙을 선택하고 일부 직사각형을 클릭하면 "OK"버튼이 있어야하며 코드에 보내야합니다. 나는 색깔의 변화가 목록에 들어가는 값과 같음을 원합니다. 즉, '확인'버튼을 클릭하면 목록에 8 개의 값이 코드에 입력됩니다. 잠시 동안 게시판 아래 게시판에 게시되도록 입력 된 목록을보고 싶습니다.
이 값을 목록에 추가하는 방법이 없으므로 목록에 쉽게 입력 할 수 있도록 값의 이름을 지정하려고 할 때 차단되지만 작동하지 않습니다. 미리 조언 해 주셔서 감사 드리며 여전히 모호한 부분이 있다면 알려 주시기 바랍니다.
I : 여기
from Tkinter import *
[couleur_resulat = \[\]
'black'==1
'white'==0
class One_Rectangle():
def __init__(self, can, depart_x, depart_y, size):
self.can=can
self.id= self.can.create_rectangle((depart_x, depart_y, depart_x+size,depart_y+size), fill='white')
self.can.tag_bind(self.id, '<ButtonPress-1>', self.set_couleur)
self.couleur_change=True
def set_couleur(self, event=None):
self.couleur_change = not self.couleur_change
couleur='white'
if not self.couleur_change:
couleur='black'
self.can.itemconfigure(self.id, fill=couleur)
fenetre =Tk()
canvas= Canvas(fenetre,width=500, height=500, background='white')
canvas.pack(side=BOTTOM, padx=5, pady=5)
OR0=One_Rectangle (canvas,110,20, 20)
OR1=One_Rectangle (canvas,130,20, 20)
OR2=One_Rectangle (canvas,150,20, 20)
OR3=One_Rectangle (canvas,170,20, 20)
OR4=One_Rectangle (canvas,190,20, 20)
OR5=One_Rectangle (canvas,210,20, 20)
OR6=One_Rectangle (canvas,230,20, 20)
OR7=One_Rectangle (canvas,250,20, 20)
OR8=One_Rectangle (canvas,270,20, 20)
B1=Button(fenetre, text='Quitter', command=fenetre.quit).pack(side=RIGHT, padx=5, pady=5)
B2=Button(fenetre, text='Relancer').pack(side=LEFT, padx=5, pady=5) #Mettre une commande pour relancer le programme lorsque c'est termine
B3=Button(fenetre, text='OK').pack(side=RIGHT,padx=5, pady=5) #On doit mettre une commande qui recoit et envoie le numero au code GET?
text1= Label(fenetre, text= 'Regles (1-255):')
entr1= Entry(fenetre)
text1.pack(side= LEFT)
entr1.pack(side=RIGHT)
fenetre.mainloop()][1]
내가
UPDATE를받을 것입니다 : ^^ '여기
내가 예로부터 지금까지 조립 된 코드는 제안 된 코드를 삽입하고 일부 수정했습니다. 예를 들면 : [ 'white'] [ 'black'] [ 'white'] 등등 가지고 있기 위해서는 어떻게해야합니까? 검정 = 0 및 흰색 = 1에 대해 동시에 한 목록에 모두 입력 할 수 있습니까? 나는이 [001001010]from Tkinter import *
couleur_resultat = list(['white' for i in range(9)])
class One_Rectangle():
def __init__(self, can, depart_x, depart_y, size,data, index):
self.can=can
self.id= self.can.create_rectangle((depart_x, depart_y, depart_x+size,depart_y+size), fill='white')
self.can.tag_bind(self.id, '<ButtonPress-1>', self.set_couleur)
self._data= data
self._index = index = index
self.couleur_change=True
def set_couleur(self, event=None):
self.couleur_change = not self.couleur_change
couleur='white'
if not self.couleur_change:
couleur='black'
self._data[self._index] = couleur
self.can.itemconfigure(self.id, fill=couleur)
fenetre =Tk()
canvas= Canvas(fenetre,width=500, height=500, background='white')
canvas.pack(side=BOTTOM, padx=5, pady=5)
OR0=One_Rectangle (canvas,110,20, 20, couleur_resultat, 0)
OR1=One_Rectangle (canvas,130,20, 20, couleur_resultat, 1)
OR2=One_Rectangle (canvas,150,20, 20, couleur_resultat, 2)
OR3=One_Rectangle (canvas,170,20, 20, couleur_resultat, 3)
OR4=One_Rectangle (canvas,190,20, 20, couleur_resultat, 4)
OR5=One_Rectangle (canvas,210,20, 20, couleur_resultat, 5)
OR6=One_Rectangle (canvas,230,20, 20, couleur_resultat, 6)
OR7=One_Rectangle (canvas,250,20, 20, couleur_resultat, 7)
OR8=One_Rectangle (canvas,270,20, 20, couleur_resultat, 8)
B1=Button(fenetre, text='Quitter', command=fenetre.quit).pack(side=RIGHT, padx=5, pady=5)
B3=Button(fenetre, text='OK', command= lambda: on_OK_pressed()).pack(side=RIGHT,padx=5, pady=5)
def on_OK_pressed():
for couleur in couleur_resultat:
'black'==1
'white'==0
print [couleur]
fenetre.mainloop()