Я хотел бы игнорировать некоторые ключевые события в текстовом представлении, теперь я делаю следующее
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?
Чтобы остановить распространение события (если событие не было настроено с помощью 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")