gpt4 book ai didi

python - 当 Gtk.Entry 处于焦点时检测按键

转载 作者:太空狗 更新时间:2023-10-30 00:50:36 26 4
gpt4 key购买 nike

我试图制作一个 Entry 小部件,在按下 Esc 时清除它的内容。
这是我尝试过的 -

class MyWindow(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self)
editor = Gtk.Entry()
self.add(editor)

我不知道将小部件连接到什么。 Esc 是一个按键,但按键应该在条目处于焦点时发生。我完全迷路了。

请帮我做一个条目,当按下 Esc 键并且它处于焦点时清除。

最佳答案

您可以将 Gtk.Entry 连接到 "key-press-event" 或/和 "key-release-event" 到接收有关为条目小部件按下或释放的键的通知。当条目接收到它必须处于焦点的按键/释放事件时,将调用回调。要检查是否按下了 Escape 键,您可以使用传递给回调的事件。您可以检查键值(与 Gdk.Event.KEY_PRESSGdk.Event.KEY_RELEASE 关联)。您可以使用 Gdk.KEY_* 检查按下或释放的键的值。您可以尝试以下内容:

...
def on_key_release(self, widget, ev, data=None):
if ev.keyval == Gdk.KEY_Escape: #If Escape pressed, reset text
widget.set_text("")
...
def __init__(self):
Gtk.Window.__init__(self)
editor = Gtk.Entry()
editor.connect("key-release-event", self.on_key_release)
self.add(editor)

网上有相当多的文档可以帮助您。
希望这对您有所帮助!

关于python - 当 Gtk.Entry 处于焦点时检测按键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20028406/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com