我正在尝试创建一个类似于任务栏检查器的Tkinter菜单。 因此,如果我转到此菜单并选中一个复选框,则会在我的窗口中显示一个特定按钮,然后用户可以根据自己的需要选择多个按钮。
该程序只是一堆按钮,在我的文本字段中输入文本并单击按钮后,将启动一个Web浏览器,搜索该按钮所链接的网站。
如何制作如上所述的菜单?
编辑:
我刚试过基本的菜单:
buttonmenu = Menu(menubar, tearoff=0)
buttonmenu.add_command(label="button1", command=turnbuttononoff)
buttonmenu.add_command(label="button2", command=turnbuttononoff)
buttonmenu.add_command(label="button3", command=turnbuttononoff)
buttonmenu.add_command(label="button4", command=turnbuttononoff)
buttonmenu.add_command(label="button5", command=turnbuttononoff)
这只是创建一个基本菜单。如果我有一个能够触发按钮打开或关闭的功能,那就太好了。
所以基本上只是一个将按钮从显示切换到未显示的功能
def turnbuttononoff():
#togglebutton here
解答: 我制作了一个存储每个按钮的位置数据的字典,然后检查按钮是否处于活动状态,如果是,则将其关闭,如果它处于非活动状态,请将其关闭。 使这个命令成为每个按钮的lambda函数。
def Toggle_Button(myButton):
if myButton.winfo_ismapped()==1:
myButton.grid_forget()
else:
myButton.grid(row=gridData[myButton][0],column=gridData[myButton][1])
答案 0 :(得分:0)
gridData = {}
gridData[button] = [row,col]
def Toggle_Button(myButton):
if myButton.winfo_ismapped()==1:
myButton.grid_forget()
else:
myButton.grid(row=gridData[myButton][0],column=gridData[myButton][1])
如果网格上已有按钮,请使用button.grid_info查找所需内容,然后返回字典。