尝试通过按钮单击事件来修改字符串

时间:2019-08-05 08:59:01

标签: python tkinter

因此,我已经在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相当陌生,因此不确定是否可以使用“主要”方法来跟踪所有内容?感谢您的帮助

0 个答案:

没有答案