我被Python 3中的脚本卡住了。我想将附加文本附加到tkinter中已有的标签。将文本附加到标签tkinter
我尝试这样的:
def labelConfig(string,append=False):
if append:
label.configure(text+=string)
else:
label.configure(text=string)
但它不会编译...我怎么能这样正常吗?
我被Python 3中的脚本卡住了。我想将附加文本附加到tkinter中已有的标签。将文本附加到标签tkinter
我尝试这样的:
def labelConfig(string,append=False):
if append:
label.configure(text+=string)
else:
label.configure(text=string)
但它不会编译...我怎么能这样正常吗?
这不是tkinter问题,这适用于所有python。在函数调用中设置位置参数时,不能使用+=
。相反,您必须获取该值,然后根据需要对其进行修改,然后将新值分配给该小部件。
例如:
def labelConfig(string,append=False):
if append:
text = label.cget("text") + string
label.configure(text=text)
else:
label.configure(text=string)
text+=string
是一个声明,所以它不会返回任何东西。您需要先从标签中获取值,然后连接这些字符串,然后将它们作为参数传递
+=
,如果你访问标签的文本从字典中值
除了:
def labelConfig(string,append=False):
if append:
label['text'] += string
else:
label['text'] = string
所有选项可以通过configure
得到或设置的语法具有相同的语法widget['option'] = value
,可用于像这样的情况。