편집 기록

편집 기록
  • 프로필 nowp님의 편집
    날짜2021.04.22

    파이썬 tkinter : 동적으로 버튼을 생성하고, 각 버튼에 대한 이벤트처리기를 lambda 를 사용하여 연결할 때의 문제.


    
    i = 0
    for f in range(len(machh)): 
        globals()['button{}'.format(f)] = 
            tkinter.Button(frame, 
                           command = lambda : self.Match_Deep_Search(f) )
        # 버튼을 리스트의 크기만큼 만듬 
    
    def Match_Deep_Search(mId):
            print(mId)
    

    machh 라는 리스트에 특정 유저의 전적 기록이 들어있습니다. 게임을 10판을 했으면 리스트에 10개의 id가 있는 식으로요.

    for 문으로 machh 리스트의 크기만큼의 버튼을 생성해서 순서에 맞는 버튼을 누르면 해당 순서의 id가 Match_Deep_Search 함수로 넣어지게 하고 싶은데

    ( 1번째 버튼을 누르면 1번째 id가 함수에 매개변수로 들어가는 식으로 )

    f를 매개 변수로 사용하면 최종 f의 크기로 숫자가 고정되더라고요.

    이 경우에 특정 버튼이 자신이 몇번째 버튼인지를 알게 해야할것같은데 어떤식으로 구현할수 있을까요? 답변 부탁드립니다.

  • 프로필 알 수 없는 사용자님의 편집
    날짜2021.04.22

    파이썬 tkinter 사용하는 알고리즘 관련해서 물어봅니다 ㅠㅠ


    //여기에 코드를 입력하세요
    i = 0
    for f in range(len(machh)): 
        globals()['button{}'.format(f)] = tkinter.Button(frame, command = lambda : self.Match_Deep_Search(f) )
        # 버튼을 리스트의 크기만큼 만듬 
    ``def Match_Deep_Search(mId):
            print(mId)
    

    machh 라는 리스트에 특정 유저의 전적 기록이 들어있습니다 게임을 10판을 했으면 리스트에 10개의 id가 있는 식으로요

    for 문으로 machh 리스트의 크기만큼의 버튼을 생성해서 순서에 맞는 버튼을 누르면 해당 순서의 id가 Match_Deep_Search 함수로 넣어지게 하고 싶은데

    ( 1번째 버튼을 누르면 1번째 id가 함수에 매개변수로 들어가는 식으로 )

    f를 매개 변수로 사용하면 최종 f의 크기로 숫자가 고정되더라고요..

    이 경우에 특정 버튼이 자신이 몇번째 버튼인지를 알게 해야할것같은데 어떤식으로 구현할수 있을까요 ㅠㅠ 답변 부탁드립니다