エディットボックス

解決


ぺんた  2006-06-22 02:41:53  No: 62275

初めまして。
エディットボックスに記述されているテキストの選択について質問させてください。
ダイアログ内にエディットボックスを貼り付けているのですが、ダイアログにフォーカスが当たった際にはエディットボックス内に記述されているテキストを自動的に選択させることはできています。
しかし、ダイアログ内のエディットボックスをクリックすると、テキストの全選択ができません。エディットボックスにフォーカスが当たったときのみ全選択されるようにと思い、EN_SETFOCUSが飛んできたときに処理を行ってもだめでした。

どのようにすると可能でしょうか?

開発環境は、VC6SP5,WIN-XP2です。
よろしくお願いいたします。


subaru  2006-06-22 08:56:48  No: 62276

エディットボックスをサブクラス化して、
WM_LBUTTONDOWN(またはWM_LBUTTONUP?)でデフォルトの処理を行ったあとに
EM_SETSELで全選択するとそれっぽい動作になると思います。


ぺんた  2006-06-22 18:19:17  No: 62277

昨日、ソースをいじくっていて思ってはいたのですが、
やはりサブクラス化しないとダメですか…

ご回答ありがとうございました。


ぺんた  2006-06-22 18:19:50  No: 62278

解決しましたので、チェックを入れました。


subaru  2006-06-22 18:54:57  No: 62279

>やはりサブクラス化しないとダメですか…

EN_SETFOCUSが飛んできたときにPostMessageでWM_APP+1を発行。

WM_APP+1の方でEM_SETSELで全選択。

という方法もありかも。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加