【发布时间】:2016-02-06 07:39:01
【问题描述】:
我的代码看起来像这样
from Tkinter import *
import tkMessageBox
import Tkinter
top = Tkinter.Tk()
CheckVar1 = IntVar()
CheckVar2 = IntVar()
C1 = Checkbutton(top, text = "Music", variable = CheckVar1, onvalue = 1, offvalue = 0 )
C2 = Checkbutton(top, text = "Video", variable = CheckVar2,onvalue = 1, offvalue = 0 )
我创建了两个带有值和一些文本的复选按钮。 如果我想打印检查按钮的值,我使用以下代码:
print CheckVar1.get()
print CheckVar2.get()
但我也想打印 Checkbutton 的文本。我尝试了以下操作:
print C1.get("text")
print C2.get("text)
这根本不起作用。这有什么技巧吗?还是我必须创建一些这样的解决方法:(这似乎很奇怪)
CheckVar1 = IntVar()
CheckVar2 = IntVar()
Name1 = StringVar(value="Music")
Name2 = StringVar(value="Video")
C1 = Checkbutton(top, text = Name1, variable = CheckVar1, onvalue = 1, offvalue = 0 )
C2 = Checkbutton(top, text = Name2, variable = CheckVar2,onvalue = 1, offvalue = 0 )
print Name1
print Name2
提前谢谢你;)
【问题讨论】:
-
@Kevin 谢谢。我忘了提到我添加了
grid函数,它一直返回我None。现在我像C1 = ...和C1.grid(....)那样拆分我的复选按钮,现在cget()函数起作用了!谢谢 -
为什么要从 UI 中获取文本?那是代码的味道。 UI 不是用于存储值,而是用于与用户交流。
标签: python python-2.7 tkinter