API-11 エディットボックスで全選択

エディットボックスが選択されたときに全ての文字が選択されるようにしたくて、EM_SETSELメッセージを送ったけれどうまくいきません。

サブクラス化すればできるらしいのですが、エディットボックスの数が多くなると面倒そうです。
 EM_SETFOCUSが来たらPostMessageで自作メッセージを送る
 自作メッセージが来たらSetFocus
という方法を見つけました。
http://homepage1.nifty.com/MADIA/vc/vc_bbs/200606/200606_06060046.html

SendMessageだったのがいけなかったのかと思い、
EM_SETFOCUSが来たらPostMessage
1.
2.
3.
case EN_SETFOCUS:
        PostMessage(GetFocus(), EM_SETSEL, 0, -1);
        break;
で試してみたところ、期待通りに動いてくれました。

0 件のコメント:

コメントを投稿