我被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
,可用於像這樣的情況。