トップページ > 過去ログ > 記事閲覧
キーボードアクセラレータについて
名前:dom 日時: 2010/10/26 14:15

以下のようにメニューバーを作成しようとしました。 メニューはできたものの、キーボードアクセラレータが表示されません。 どうすれば上手くいくでしょうか。 リソースファイル-------------------------------- #define IDR_MENU 100 #define IDM_OPEN 101 #define IDM_EXIT 102 IDR_MENU MENU { POPUP "ファイル(&F)" { MENUITEM "開く(&O)", IDM_OPEN MENUITEM SEPARATOR MENUITEM "終了(&X)", IDM_EXIT } } メニューバー作成-------------------------------- SetUseMenuFlag( TRUE ); // メニューを有効にする SetUseKeyAccelFlag( TRUE ) ; // キーボードアクセラレーターを使用する LoadMenuResource( IDR_MENU ); // メニューをリソースから読み込む AddKeyAccel( "開く(&O)",IDM_OPEN, 'O', 1 , 0, 0 ) ; // ショートカットキーを追加する

Page: 1 |

Re: キーボードアクセラレータについて ( No.1 )
名前:いっち 日時:2010/10/27 20:50

> キーボードアクセラレータが表示されません。 キーボードアクセラレータは画面に表示するものでは無いと思うのですが、 どの様な動作をご希望なのでしょうか?
Re: キーボードアクセラレータについて ( No.2 )
名前:dom 日時:2010/10/28 20:22

すみません、勉強不足です。 キーボードアクセラレータを利用したいのですが、 対応するキーがメニューに表示されません。 具体的には、メニューバーの"ファイル(F)"をクリックして、 出てきた"開く(O)"の右側にCtrl+Oと表示させたいのですが、何も表示されません。
Re: キーボードアクセラレータについて ( No.3 )
名前:いっち 日時:2010/10/29 20:19

> 出てきた"開く(O)"の右側にCtrl+Oと表示させたいのですが、何も表示されません。 こういった場合、自前でメニューの文字列を編集する必要があるのだと思います。 ちなみに [Ctrl+O] をショートカットに設定する場合は以下のようにするのが正しいと思います。 > AddKeyAccel( "開く(&O)",IDM_OPEN, 'O', 1 , 0, 0 ) ; // ショートカットキーを追加する ↓↓ 変更 ↓↓ > AddKeyAccel( "開く(&O)",IDM_OPEN, KEY_INPUT_O, 1 , 0, 0 ) ; // ショートカットキーを追加す
Re: キーボードアクセラレータについて ( No.4 )
名前:dom 日時:2010/10/29 21:02

そうでしたか。おかげで解決できました。 ありがとうございます。

Page: 1 |