You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用tkinter实现下拉菜单时GUI界面无显示问题咨询

问题原因

你代码的核心问题是级联菜单的挂载逻辑错误,导致没有任何菜单能正常渲染显示:

  • add_cascade 是父菜单用来挂载子菜单的方法,你当前代码让子菜单submenu、sourya自己调用add_cascade,并把自己设为关联菜单,形成了无效的循环引用
  • 两个子菜单submenu和sourya都没有正确挂载到你创建的顶层菜单pikumenu上,所以窗口不会显示任何菜单内容
解决方法

调整级联菜单的挂载逻辑,让顶层菜单pikumenu调用add_cascade挂载两个子菜单即可,修正后的完整代码如下:

from tkinter import *

def functionhi():
    print("hiiiiii")

root = Tk()

pikumenu = Menu(root)
root.config(menu=pikumenu)

submenu = Menu(pikumenu)
# 父菜单pikumenu挂载submenu子菜单
pikumenu.add_cascade(label="add",menu=submenu)
submenu.add_command(label="do",command=functionhi)
submenu.add_separator()
submenu.add_command(label="hiii",command=functionhi)

sourya= Menu(pikumenu)
# 父菜单pikumenu挂载sourya子菜单
pikumenu.add_cascade(label="exit",menu=sourya)
sourya.add_command(label="done",command=lambda:print("hiiii exit "))

root.mainloop()

修改完成后运行代码,窗口顶部就会显示add和exit两个主下拉菜单,点击即可展开对应子选项,触发对应功能。


内容的提问来源于stack exchange,提问作者SOURYA SUKUL

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 01:36:05