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

在customtkinter中调用cget()获取按钮文本报错,如何解决?

在CustomTkinter中获取CTkButton文本内容的正确方式

标准tkinter里能用cget("text")获取按钮文本,但CustomTkinter的CTkButton用同样写法会抛出_tkinter.TclError: unknown option "-text"错误——这是因为CustomTkinter的组件封装逻辑和标准tkinter不同,text参数被作为实例属性直接存储,而非通过Tcl选项系统暴露。

有两种正确的获取方式:

方式一:直接访问实例的text属性

这是最简单直接的方法:

from customtkinter import *

root = CTk()

button = CTkButton(text="hello")
button.pack()

button_text = button.text
print(button_text)  # 输出: hello

方式二:使用CustomTkinter的cget方法(注意参数格式)

如果习惯用类似cget的调用方式,需要传递不带短横线的属性名给cget:

from customtkinter import *

root = CTk()

button = CTkButton(text="hello")
button.pack()

button_text = button.cget("text")
print(button_text)  # 输出: hello

注:早期版本的CustomTkinter可能存在cget方法兼容问题,优先推荐方式一。

内容的提问来源于stack exchange,提问作者Paul Weinmann

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 11:05:22