コントロールのフォーカス

公開:2011-09-14 19:35
更新:2020-02-15 04:36
カテゴリ:その他api,c++,dawもどきの作成,windows,audio

キーボード(TAB)でコントロール間のフォーカスを移動できない問題はやはり凡ミスだった。メッセージループ処理の中で、IsDialogMessage()に渡すウィンドウハンドルがおかしな値になっていたのだ。

それは良かったのだが、ファイルを読み込んだ後、フォーカスを再生ボタンに自動的に移動させたいと思いSetFocusで移動させてみたがどうもうまくいかない。フォーカスは移動しているようなのだが、ボタンの青く点滅するエフェクトが移動しないのである。

実はマウスでクリックしたり、TABキーで移動するとちゃんとフォーカスと青く点滅するエフェクトは同期して移動する。

なぜこうなるのかはよくわからない。フォーカスのメッセージではなく別のメッセージを送らなくてはいけないのかもしれないし、凡ミスかもしれない。