我正在尝试为变量属性分配一个值。这是一段代码
def __init__(self):
def getCurrenValue( screen_area):
# self.screen_area = screen_area
db = postgresql.open(db_conf.connectionString())
data = db.query("select active from screen_coordinates where screen_area = " + str(screen_area))
return data[0]['active']
print(getCurrenValue(1))
# first = 1
first = (getCurrenValue(1))
# first = first.get()
print(first)
tkinter.Tk.__init__(self)
threading.Thread.__init__(self)
self.wait = 1
self.setDaemon(True)
self.start()
self.geometry('150x150')
self.title('Calculator')
self.columnconfigure(1, pad=5)
tkinter.Checkbutton(text="1", variable=first, onvalue=1, offvalue=0).grid(row=3, column=2)
print(first)
打印输出都给出“1”,但表格未选中。我只是试图分配一个同样未经检查的单元。可能是什么问题呢?
.get()
然后使用and方法访问此变量中的值.set()
。它应该是这样的:
类的对象
BooleanVar
,IntVar
,DoubleVar
,StringVar
是内部变量Tk
,你不能直接访问它们的值(就像我们对普通 Python 变量的值所做的那样)。这样一个变量的值可以用方法得到.get()
,用方法改变.set()
。如果我们尝试用简单的赋值(不是方法.set()
)覆盖值,那么我们将失去对变量对象的访问权限。您可以在此处阅读有关使用绑定到控件的变量的信息,例如:Radiobutton 和 Checkbutton。Tkinter 变量