| v9.2006.xp 1個だけのフォームを使ったメニューをつくっています。メニューはリストボックスのような外見で、マウスの左クリックあるいは右クリックで呼出します。それにサブメニューをつけます。問題はサブメニューを表示させた後です。 サブメニューの外にマウスポインターが出たときサブメニューを消そうと思って、以下の構想をたてました。 フォームオープンでタイマーをオンにする。インターバルは0.1秒。タイマーイベントでマウス位置が定義されているかを調べ、定義されていなければフォームにある閉じるのコマンドボタンを動作させる。同時にマウス移動イベントをフォームに定義します。 これで理屈は合っていると思うんですが、タイマーを動かすと画面が点滅する、マウス位置がどのフォームのものかがきちんと定義されていないせいか、メインフォームの外にポインターが出るとサブフォームが消える、という問題があります。 なにかいい方法はないでしょうか。
|