如何清除ttk.Combobox的文本字段部分?

9

我有一个删除函数,它应该删除下拉框中选定的项目及其关联的字典值。然后它应该清除显示该字典值的文本框,我希望它还可以仅清除下拉框的文本文件。有没有办法做到这一点?

def DeleteEntry():
    if not ComboBox.get() == "" and ComboBox.get() in FriendMap:
        del FriendMap[ComboBox.get()]
        FriendListKeys = FriendMap.keys()
        FriendListKeys.sort()
        ComboBox['values']=FriendListKeys
        FriendListBox.delete(1.0,2.0)

这是我目前为止的代码,但我希望下一行能删除组合框中的文本字段。
2个回答

15

您可以通过将Combobox的值设置为空字符串来清除其选择的值:

ComboBox.set('')

但它将重新出现 - Daxtrox

1
将下拉框的StringVar设置为空字符串,而不是直接清空控件本身。
def clear():
    var.set('')
var = tk.StringVar()
values = ['one', 'two', 'three']
cb = tk.ttk.Combobox(root, state = 'readonly', textvariable = var, values = values)
cb.pack()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接