我必须在 C 中使用混乱创建一个垂直菜单。谁能帮助我如何使用导航键来实现焦点转移,我想在其中突出显示焦点菜单选项。
1 回答
最简单的方法是将包含所有菜单项的actor标记为反应性,使用它分配关键焦点clutter_actor_grab_key_focus()
并连接到key-press-event
信号。然后您可以使用clutter_event_get_key_symbol()
传递给信号并将其与或ClutterEvent
之类的关键符号匹配。CLUTTER_KEY_Down
CLUTTER_KEY_Up
然后甚至可以ClutterBindingPool
用来处理(键符号,修饰符)的元组并将它们分配给特定的回调函数。
有关更多信息,请参阅 API 参考:
http://developer.gnome.org/clutter/stable/ClutterActor.html#clutter-actor-grab-key-focus http://developer.gnome.org/clutter/stable/ClutterActor.html#ClutterActor-key-press -事件 http://developer.gnome.org/clutter/stable/clutter-Events.html#clutter-event-get-key-symbol http://developer.gnome.org/clutter/stable/clutter-Key-Bindings .html
clutter-keysyms.h 头文件中的键符号列表:
http://git.gnome.org/browse/clutter/tree/clutter/clutter-keysyms.h
食谱中也有各种食谱:
https://developer.gnome.org/clutter-cookbook/stable/events-handling-key-events.html