- PR -

VB.NET でのフォーカスセットの方法

投稿者投稿内容
Izumi, Y.
ベテラン
会議室デビュー日: 2002/03/19
投稿数: 77
お住まい・勤務地: 東京
投稿日時: 2003-08-19 03:39
TopMost プロパティを true にすれば SetWindowPos 関数の呼び出しは必要なくなるはずなのですが、ひょっとして残したままにしていませんでしたか?

引用:

対症療法ですが、
表示したフォームを常に手前に表示する処理をTopMostプロパティでしてみてはどうでしょうか?


.NET Framework の範囲でできることは Win32 API ではなく .NET Framework の機能を使用するべきだと思います。その点で、こちらの方法は対症療法と言うよりもむしろ正統のような気がします。
#とはいっても、慣れるまでは該当するプロパティやメソッドを探すのが大変ですが。
Swd
会議室デビュー日: 2003/07/08
投稿数: 8
投稿日時: 2003-08-19 21:06
IZUMI Yusukeさんありがとうございます。

TopMostプロパティを使用しても上手くいきました。
FormのLoad時に TopMostプロパティをtrueにしました。

ただ、Formのプロパティにて、実行前の時点で設定していると、
やはりフォーカスがどこにもセットされていない状態にて表示されてしまいました。

やはりタイミングの問題なのですね。。。
このあたり(Win32APIから.NETFrameworkへの置換え含め)は、
今後勉強していこうと思います。

スキルアップ/キャリアアップ(JOB@IT)