求识别CustomTkinter中该组件的名称及使用方法
识别到的CustomTkinter组件:CTkCollapsibleFrame
你截图里的组件是CTkCollapsibleFrame,它是CustomTkinter的常用扩展组件(部分场景需单独安装对应扩展包,也可通过基础组件手动实现),核心作用是创建可展开/折叠的分层导航面板,适配GUI的侧边菜单需求。
基础使用示例(依赖扩展包)
import customtkinter as ctk from customtkinter import CTkCollapsibleFrame # 先安装扩展包:pip install customtkinter-collapsibleframe ctk.set_appearance_mode("dark") ctk.set_default_color_theme("blue") app = ctk.CTk() app.geometry("450x550") # 创建侧边容器 sidebar = ctk.CTkFrame(app, width=220) sidebar.pack(side="left", fill="y", padx=8, pady=8) # 可折叠菜单:Dashboard dashboard_menu = CTkCollapsibleFrame(sidebar, text="Dashboard") dashboard_menu.pack(fill="x", padx=5, pady=5) # 添加子选项 ctk.CTkButton(dashboard_menu, text="Overview").pack(fill="x", padx=12, pady=3) ctk.CTkButton(dashboard_menu, text="Analytics").pack(fill="x", padx=12, pady=3) # 可折叠菜单:Orders orders_menu = CTkCollapsibleFrame(sidebar, text="Orders") orders_menu.pack(fill="x", padx=5, pady=5) ctk.CTkButton(orders_menu, text="Pending").pack(fill="x", padx=12, pady=3) ctk.CTkButton(orders_menu, text="Completed").pack(fill="x", padx=12, pady=3) app.mainloop()
手动实现方案(无需扩展包)
如果不想依赖第三方扩展,可通过CTkFrame和CTkButton结合组件的显示/隐藏方法手动实现折叠逻辑:
import customtkinter as ctk ctk.set_appearance_mode("dark") ctk.set_default_color_theme("blue") app = ctk.CTk() app.geometry("450x550") sidebar = ctk.CTkFrame(app, width=220) sidebar.pack(side="left", fill="y", padx=8, pady=8) # 定义折叠切换函数 def toggle_submenu(subframe): if subframe.winfo_ismapped(): subframe.pack_forget() else: subframe.pack(fill="x", padx=12, pady=3) # Dashboard菜单 dashboard_btn = ctk.CTkButton(sidebar, text="Dashboard", command=lambda: toggle_submenu(dashboard_sub)) dashboard_btn.pack(fill="x", padx=5, pady=5) dashboard_sub = ctk.CTkFrame(sidebar) dashboard_sub.pack(fill="x", padx=12, pady=3) ctk.CTkButton(dashboard_sub, text="Overview").pack(fill="x", padx=10, pady=3) ctk.CTkButton(dashboard_sub, text="Analytics").pack(fill="x", padx=10, pady=3) app.mainloop()
内容的提问来源于stack exchange,提问作者islam
相关产品推荐
相关产品推荐

