- PR -

カスタムボタンからマウスをどかさないとListBoxが再描画されない

1
投稿者投稿内容
roku
会議室デビュー日: 2007/03/16
投稿数: 9
投稿日時: 2007-03-19 14:02
こんにちは

VB.NETで
UserButton.dll … カスタムボタン(Button継承)
Win32Api.dll … WIN32APIの呼び出しSharedメソッド実装
という2つのDLLを用意し、
Formに張り付けたカスタムボタンをClickしたときに、
Win32APIを呼び出して、Visibleなウィンドウのタイトルを
ListBoxに表示するプログラムを作成しました。

ところがカスタムボタンをクリックした後、マウスポタンターを
カスタムボタンの外に移動しないとListBoxにaddしたタイトルが
表示されません。

通常のButtonではClickした直後に描画されます。

ただし、ListBoxへのaddと同時にListBoxをrefresh()すれば
カスタムボタンのClick直後でも描画はされますが、通常の
Buttonではそのようなことをする必要がないので理解に苦し
みます。

この苦しみを和らげていただけますでしょうか。
よろしくお願いいたします。
roku
会議室デビュー日: 2007/03/16
投稿数: 9
投稿日時: 2007-03-19 14:33
すみません。自己レスです。

カスタムボタンでマウスポタンターがButtonの上を通過したかどうかを
OnMouseMoveメソッドをOverrideして監視していたのが原因のようです。
へぼミスです。
OnMouseEnterメソッドが正解でした。
お騒がせして申し訳ありません。 m(_ _)m

1

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