2010-05-06 3 views
1

У меня есть два wxListCtrl и хотите обработать Ctrl + Enter событие клавиатуры, не позволяя WX изменить фокус на другой ListCtrl.WxPython Предотвратить Ctrl + Enter от изменения фокуса

У меня есть обработчики событий для wx.EVT_KEY_DOWN, wx.EVT_KEY_UP, wx.EVT_CHAR и KillFocus, но KillFocus всегда вызывается первым, затем изменяется фокус, а обработчики клавиатуры вызывают неправильный ListCtrl.

Есть ли способ, чтобы предотвратить WX от изменения фокуса, когда Ctrl + Enter нажата?

ответ

1

Не знаю, будет ли это работать, но кто знает!

ac = [(wx.ACCEL_CTRL, wx.WXK_RETURN, wx.NewId())] 
    tbl = wx.AcceleratorTable(ac) 
    list.SetAcceleratorTable(tbl) # should overwrite its bindings? 

или попробовать EVT_CHAR_HOOK

Смежные вопросы