Событие Python Gtk игнорировать

Я хотел бы игнорировать некоторые ключевые события в текстовом представлении, теперь я делаю следующее

def on_key_press_event(self,source,event):
    keyname = Gdk.keyval_name(event.keyval)
    if(keyname=="Return"):
            tv = self.builder.get_object('txtMsg')
            buf = tv.get_buffer()
            msg = buf.get_text(buf.get_start_iter(),buf.get_end_iter(),self)
            msg=msg.replace("\n","")
            buf.set_text(msg)

Есть ли какая-либо функция, эквивалентная функции Java event.consume () в python?

1
задан 6 July 2012 в 21:28

1 ответ

Чтобы остановить распространение события (если событие не было настроено с помощью connect_after), вы можете запустить

object.emit_stop_by_name(event_name)

Например, если я подключил событие нажатия клавиши следующим образом:

self.textview.connect("key-press-event", self.on_key_press)

Я могу остановить его распространение так:

def on_key_press(self, widget, event):
    self.textview.emit_stop_by_name("key-press-event")
0
ответ дан 6 July 2012 в 21:28

Другие вопросы по тегам:

Похожие вопросы: