Enterキーで検索

Enterキーを押したときは必ず検処理が動くようにと、色々試す。
はじめは、そういえば規定のボタンというのがあったな?と思い出し、wxButtonを追加してSetDefault()を呼ぶと、一応規定ボタンとして動作した。同じwxPanelの配下のコントロールには効くみたいで、コンボボックスやwxListCtrlからはEnterキーでボタン押下と同じイベントとなる。しかし!wxPropertyGridからは効かない・・・。ボタンのレイアウトをどうするか考えるのも面倒ということもあるので、この方法はやめる。
次に、wxFrame::MSWTranslateMessage()をオーバーライドして、Enterキー押下のメッセージが来たとき検索処理が行われるようにする。これを書いてしまうと他のプラットフォームとの互換性が無くなるかもしれないなと思いつつ書いてみたら動いた。wxPropertyGridでEnterを押したときも動作している。しかし・・・wxPropertyGridで入力した語が検索処理ですぐに反映されないではないか・・・。どうも入力値の確定はフォーカスが無くなったり入力項目を移動したり特殊キーを押したときにされる様子。そういうことならと特殊キー(CONTROL)の押下のメッセージを送れば良いだろうと、メッセージ送信処理をあてずっぽうに書いてみたけどどれもうまく動かない。key_event()を呼ぶとCONTROLの押下は出来ているみたいだけどその直後の検索処理には反映されず、その次以降では入力値が確定しているという中途半端な状態。というところで今日のところは終了。