2014-12-11 2 views
0

저는 버튼을 누를 때 특정 명령이 호출되는 GUI를 빌드하기 위해 Python과 TkInter를 사용하고 있습니다. 관련 코드는 다음과 같습니다호출되지 않을 때 실행되는 함수

class Main(Frame): 
    def __init__(self, parent): 
    self.generate_noise_button = Button(root, text="Add noise and save", command=self.generate_noise()) 

... 


def generate_noise(self): 
    header.generate_noise() 

나는 generate_noise() 방법에 중단 점을 배치하고 프로그램을 실행하면, 브레이크 포인트가 즉시 호출되지되는거나 버튼을 누르는 결코에도 불구하고 공격한다. 또한 실제로 버튼을 누를 때마다 버튼을 완전히 쓸모 없게 만들지 않습니다. 왜?

답변

0
self.generate_noise_button = Button(root, text="Add noise and save", command=self.generate_noise()) 

당신이 command 인수를 제공 는, 당신은 마지막에 괄호를 추가 안돼요.

self.generate_noise_button = Button(root, text="Add noise and save", command=self.generate_noise) 

당신은 command이 방법은 객체를 참조가 호출 된 후 메서드가 반환하는 값이 아닌 싶습니다.

관련 문제