Найти - Пользователи
Полная версия: [PyGTK] забиндить функцию
Начало » GUI » [PyGTK] забиндить функцию
1
frpaul
Не могу понять, как в сабже связать клавиатурную комбинацию (напр. ctl + s) с функцией. Кажется имеет отношение к accel_group, но я не понял как работает. Хелп.
.Serj.
Почитай pygtk tutorial. Там описано, как назначать action'ы и сочетания клавиш с помощью UIManager, Accell- и ActionGroup.
frpaul
.Serj.
Почитай pygtk tutorial. Там описано, как назначать action'ы и сочетания клавиш с помощью UIManager, Accell- и ActionGroup.
У меня уже башка трещит от технического английского. Читать, конечно, надо, но просветление приходит не сразу.
Я нашел решение упорным гуглением интернетов.

коллбэк функция:
def key_press_event_cb(widget, event):
from gtk.gdk import CONTROL_MASK
if event.state & CONTROL_MASK:
from gtk.gdk import keyval_name
if keyval_name(event.keyval) == "s":
print "You pressed control - s"
return True
return False
привязываем к окну:
window.connect("key-press-event",key_press_event_cb)
Альтернативы?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB