Tkinter菜单和按钮

2024-04-19 21:12:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试做一个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)

这只是创建一个基本菜单。如果我有一个能触发按钮打开或关闭的功能,那就太好了。在

所以本质上只是一个将按钮从显示状态切换到不显示状态的函数

^{pr2}$

回答: 我对每个按钮的存储位置做了一个字典,然后检查按钮是否处于活动状态,如果处于活动状态,则将其关闭;如果处于非活动状态,则将其关闭。 使其成为每个按钮的命令lambda函数可以工作。在

def Toggle_Button(myButton):
if myButton.winfo_ismapped()==1:
    myButton.grid_forget()
else:
    myButton.grid(row=gridData[myButton][0],column=gridData[myButton][1])

Tags: 函数文本addtkinter状态菜单按钮label
1条回答
网友
1楼 · 发布于 2024-04-19 21:12:26
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_信息为了找到你需要的,它返回一个字典。在

相关问题 更多 >