Cでクラッターを使用して垂直メニューを作成する必要があります。フォーカスされたメニューオプションを強調表示したいメニューのナビゲーションキーを使用してフォーカスシフトを実装する方法を教えてください。
1 に答える
最も簡単な方法は、すべてのメニュー アイテムを含むアクタをリアクティブとしてマークし、 を使用してキー フォーカスを割り当て、シグナル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 -event 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