掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
アクセラレータキーの反応 (ID:29711)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
方法1:カスタムコンポをつくって、そこに乗せる TMyPanel=class(TPanel) procedure CMDialogChar(var Message: TCMDialogChar); message CM_DIALOGCHAR; end; procedure TMyPanel.CMDialogChar(var Message: TCMDialogChar); begin //もみ消し end; 方法2:コンテナクラス(今回の場合 TPanel)のメッセージをフックして やっぱり、CM_DIALOGCHAR をもみ消す 方法3:Captionを変更する(Fusaさんの方法) 今回、10件程度の履歴を表示するコントロールなので、 それほどめんどくさくなかったです。 めんどくさいなんて言ってすいません >Fusaさん Menus.pas の宣言を利用する > cHotkeyPrefix := '&'; 各履歴用SpeedButtonは、配列に格納済みとして for i := 0 to 9 do begin SpeedButton[i].Action := 履歴のAction[i]; SpeedButton[i].Caption := 自作cHotkeyPrefixを取り除く関数(SpeedButton[i].Caption); end; KeyDownとかを、もっと追いかけたら、もっと少しいい方法があるかもしれないけど とりあえずは、これだけしか思いつかない。 方法1、2は、他に影響でるかもしれないので、とりあえず方法3で乗り切ってみます。 KHE00221 さんが、すばらしい技を披露してくれそうな予感がしますが、 とりあえずは、〆ます。 それではみなさん、ごきげんよう
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.