因此,我已经在tkinter中为键盘编码,并且我试图创建一个游戏,用户必须单击与所显示角色相对应的键。他们单击正确的键后,该字符将更改为另一个字符。我希望有一定数量的字符,一旦用户单击它们,它们就会全部赢。
目前,我的代码可以正常工作,因此当他们单击鼠标右键时,字符会更改。但是我似乎无法弄清楚如何跟踪他们何时单击了所有正确的键。
所有键都有此命令
new_but = Button(button_frame, text=key, command=lambda x=key: letter_check(x,target))
这是命令的代码
def clear_data(String):
String.set("")
def show_data(string):
data.set(string)
def letter_check(string, target):
if data.get() == string:
data.set("")
target = next_target(target)
def next_target(block):
new_block = list(block)
letter = random.choice(new_block)
new_block.remove(letter)
show_data(letter)
block = str(new_block)
print(new_block)
return block
target = "abcdef"
n = 3
其中show_data和clear_data方法仅更改显示字符。我知道在命令中我将始终使用原始目标字符串“ abcdef”
我希望它工作,所以一开始我有目标字符串“ abcdef”,然后系统将随机选择目标字符串中的一个字符,说它选择了“ b”,然后我希望目标字符串成为单击“ acdef”,然后单击相应的键('b'),再次选择另一个随机字符,例如“ e”,则目标字符串应为“ acdf”,依此类推,直到目标字符串为空,然后赢得游戏。我只是不知道如何在方法中跟踪修改后的目标字符串。我对tkinter相当陌生,因此不确定是否可以使用“主要”方法来跟踪所有内容?感谢您的帮助