因此,列表框中有很多项目,我希望当用户单击列表框中的某个项目时,它应该显示相应的窗口。因此,例如,如果用户单击列表框中的第一个项目,则应显示window_1
,如果用户单击第二个项目,则应显示window_2
,依此类推...
如何使用tkinter达到目标?
答案 0 :(得分:0)
因此,我决定使用菜单按钮来完成此任务并解决了问题。这是我的方法:
from functools import partial
import tkinter as tk
root = tk.Tk()
mb = tk.Menubutton(root, text=" Answers ")
mb.menu = tk.Menu(mb)
mb['menu'] = mb.menu
mb.pack()
def answers_message(text):
t = tk.Toplevel()
message = tk.Message(t, text=text)
message.pack(side="top", fill="both", expand=True, padx=50, pady=50)
repetition = int(input("How many repetitions: "))
messages = ['one', 'two', 'three', 'four', 'five']
for i in range(repetition):
action_with_arg = partial(answers_message, messages[i])
ans_label = "Answer {}".format(i)
mb.menu.add_command(label=ans_label, command=action_with_arg)
root.mainloop()