8

GTK + 3で複数のキーボードショートカットを1つのアクションにバインドする最良の方法は何ですか?

私はこれに対する答えを数日間探していましたが、何も思いつきませんでした。この関数gtk_accelerator_parseは、コンマ区切りのショートカットをサポートしていません。同じ属性と異なる属性を持つファイルに複数の<accelerator>タグを配置することも機能しません。.uiactionkey

1つのアクションに対して2つのショートカットを使用できるようにするために、カスタムのキープレスハンドラーを作成する必要はありませんが、それが本当に唯一の方法ですか?

4

2 に答える 2

2

GTKバージョン3.12(2014-03-25にリリース)以降、gtk_application_set_accels_for_action()役立つはずの新しいメソッドがあります。

于 2020-12-26T12:30:31.407 に答える
1

私は方法を見つけました、しかしそれは本当にひどいです。を使用gtk_accel_group_connectすると、自分の関数にアクセラレータを追加して、押されたキーと修飾子に基づいて必要なアクションをトリガーできます。ただし、GTKを使用するのではなく、基本的に独自のアクセラレータからアクションへのマップを作成しているため、これはハックのように感じます。

誰かが知っているなら、もっと良い方法を知りたいです。

于 2012-04-16T23:15:09.157 に答える