我對窗口中的所有條目窗口小部件有類似的界限。如果全部都有條目,則繪製一個按鈕,如果任何一個爲空,則該按鈕不被繪製或移除。我希望用戶輸入一個特定的號碼,而不是接受默認值。檢查條目窗口小部件
any_entry = ttk.Entry(...)
any_entry.bind('<Key>', is_empty)
這是處理程序:
def is_empty(event):
for child in window.winfo_children():
if child.winfo_class() == 'TEntry':
if child.get() == '':
calc_btn.grid_remove()
return
calc_btn.grid()
我遇到的問題是,該處理器被調用任何按鍵,但存儲在widget textvariable值不直到下一次按鍵更新或小部件失去焦點。如果我在每個Entry小部件中放入一個數字,則會顯示calc_button。如果我專注於任何條目並刪除條目,則在另一個鍵按下或移動焦點之前,該按鈕不會被刪除。這允許用戶單擊calc_button,暴露出道路上可能出現的異常或錯誤,因爲一個Entry可能會產生空值。有關如何更好地處理此問題的任何建議?
完美!我不明白,也無法找到第三個參數(add ='+')的任何信息。你能解釋一下還是指導我解釋一個資料來源?附:我的示例沒有反映,但我正在使用類結構。 –
添加綁定到此小部件的事件。通常,新綁定會替換相同事件序列的任何現有綁定。通過傳入「+」作爲第三個參數,新的回調被添加到現有的綁定中。來源:http://effbot.org/tkinterbook/widget.htm我在那裏添加它,以確保我不與現有的默認綁定插件。 –