0

又经过 30 分钟的搜索后返回,要么无法理解结果,要么无法找到结果……

我想强制我的应用程序在继续之前等待按钮单击,并以以下代码片段为例:

... 

def crack(self, Filenamelist, forceclick):

        forceclick += 1

        self.crackButton.configure(state='active')

        if forceclick != 2:

            self.crackButton.bind('<ButtonRelease-1>', self.crack(Filenamelist, forceclick))

        self.outputBox.insert(END, '\n' + 'Parsing answer numerator...' + '\n')

...

我基本上希望它加载函数crack(),递增1到forceclick(之前设置为0),将'crack button'更改为活动状态,然后在等待用户触发绑定时绑定按钮. 触发绑定后,该函数重新加载,递增 1 以强制单击,然后跳过 if 语句。

但是,当我运行程序时,它只是将密钥绑定到破解按钮并自动重新加载该函数以绕过 if 语句……我之前尝试了一个 while 循环,但结果并不好……

有什么建议么?

4

1 回答 1

0

您需要将绑定函数设为 lambda:

self.crackButton.bind('<ButtonRelease-1>', lambda e: self.crack(Filenamelist, forceclick))

目前它正在调用该函数。

尽管可能有更好的方法来完成您要完成的工作,但这应该可以解决您的直接问题。

于 2012-06-04T23:18:20.293 回答