当前位置: 首页 > 面试题库 >

按下Tkinter时清除输入框文本

施飞驰
2023-03-14
问题内容

我不确定是否已经询问过此问题,但是我有多个输入框,其中包含默认文本。我不是要设置默认的文本,而是要在单击输入框时删除它。我希望能够在单击输入框后立即删除默认文本,因此用户不必这样做。我想知道是否有人可以分享一个有关如何完成此操作的快速示例,以便我可以实施。

    def removeValue(event):
        self.entry.delete(0, 'end')
        return None

    for i in range(1, numberOfStudents + 1):
        for p in range(0,2):
            self.entry = Entry(self.master)
            if p == 0:
                self.entry.insert(0, 'Enter name of student')
                self.entry.place(x = 10, y = (i * 30) + 26)
                self.entry.bind("<Button-1>", removeValue)
            if p == 1:
                self.entry.insert(0, 'Enter predicted')
                self.entry.place(x = (getWidth(master) - 140), y = (i * 30) + 26)
                self.entry.bind("<Button-1>", removeValue)

到目前为止,我已经知道了,但是只删除了最后一个输入框文本。


问题答案:

假设您已整理好默认文本,则想在某个地方创建事件绑定,并使用上面注释的常规格式,不确定为什么它不是答案,因为它是正确的:

import tkinter as tk

root = tk.Tk()
e = tk.Entry(root)
e.insert(0, "some text")

def some_callback(event): # note that you must include the event as an arg, even if you don't use it.
    e.delete(0, "end")
    return None

e.bind("<Button-1>", some_callback)

e.pack()

最后,http://effbot.org是您的朋友:http : //effbot.org/tkinterbook/tkinter-events-and-
bindings.htm

编辑:OP的附加信息从评论。如果您有多个条目,并且需要分别清除每个条目,则可以简单地使用以下方法引用调用了绑定方法的小部件:

event.widget

然后,您的回调可以如下进行:

def some_callback(event):
    event.widget.delete(0, "end")
    return None


 类似资料:
  • 问题内容: 我正在尝试清除tkinter中的框架,以便可以写入新内容(刷新信息),但是我无法做到这一点。我知道这些 但是frame.destroy()会完全删除框架。另外两个也不能给我我想要的结果。我需要的只是 清除框架中的每个项目,但框架本身会保留下来 。反正有做吗? 问题答案: 并且只会从视图中删除小部件,不会破坏它们。如果您不打算重复使用这些小部件,那么唯一的选择就是使用方法销毁它们。 为此

  • 在chrome上,当用户单击清除按钮时,搜索输入会触发“搜索”事件。 是否有一种方法可以在Internet Explorer10上用javascript捕获相同的事件?

  • 问题内容: 我希望有一个漂亮的小图标,单击该图标可以清除[HTML_REMOVED]框中的文本。 这是为了节省空间,而不是在输入框外部没有清晰的链接。 我的CSS技能很弱…这是一个 屏幕截图iPhone外观的照片。 问题答案: @thebluefox总结了全部。您还只需要使用JavaScript即可使该按钮正常工作。这是一个SSCCE,您可以复制’n’粘贴’n’运行它: jQuery并不是必须的,

  • 本文向大家介绍Android带清除按钮、密码可见小眼睛的输入框,包括了Android带清除按钮、密码可见小眼睛的输入框的使用技巧和注意事项,需要的朋友参考一下 前言 相信不少小伙伴在开发登录功能时候,或多或少都会用到输入框清除按钮、密码可见与隐藏小眼睛按钮,我之前也是但写这个功能,但是在找回密码、忘记密码里面还要重新写一次很是麻烦,现在我把它只做了一个自定义控件,可以配置清除按钮、密码可见小眼睛是

  • 我需要清除编辑文本时单击按钮。在java中,我们使用getText或setText,但在科特林中,我找不到任何东西。 我尝试使用此选项,但---text=“”---导致类型不匹配

  • 问题内容: 有没有一种快速的方法来创建带有右侧图标的输入文本元素,以清除输入元素本身(如google搜索框)? 我环顾四周,但只发现了如何将图标作为输入元素的背景。是否有jQuery插件或其他工具? 我想要输入文本元素中的图标,例如: 问题答案: 将a添加到您的输入中 该支持相当不错,但在IE <10中不起作用 旧浏览器的可清除输入 如果您需要IE9支持,请采取以下解决方法 使用标准和一些HTML