子フォームのダブルクリックイベントで親フォームのクリックイベントを発生させなくするには?

解決


 2004-04-20 18:52:10  No: 8436  IP: [192.*.*.*]

お世話になっております。
親フォームから、子フォームをShowModalしています。
子フォームではOnDblClickイベントでデータを特定し、ModalResult := mrOKとして親フォームに特定されてデータを返していますが、
子フォームが閉じた後、親フォームのDbGridでOnCellCliclが発生します。
(子フォームのダブルクリックした場所が親フォームのDBGridに重なっていた場合)
子フォームのShowModal前に親フォームのEnableをFalseにしたり、KeyPreviewをFalseにしたりしましたが効果がありません....
又、この現象はステップ実行にすると発生しません。
なにか回避策があれば、よろしくお願いします。

編集    削除
jok  2004-04-20 19:06:33  No: 8437  IP: [192.*.*.*]

再現しませんね。マウスがヘボイとか?

編集    削除
 2004-04-20 19:35:32  No: 8438  IP: [192.*.*.*]

早速のご返事ありがとうございました。
この現象ですが、テストしていたところ、特定の条件下で発生するようです。

1.子フォームを自動作成せずに、ShowModal前にクリエイトした場合
  ①パネルコントロールのダブルクリックイベントで発生
  ②TMonthCalendarのダブルクリックイベントで発生

2.子フォームを自動作成した場合
  ①パネルコントロールのダブルクリックイベントで発生しない
  ②TMonthCalendarのダブルクリックイベントで発生

なにかあればろしくお願いします。
あと、マウスは少しヘボイかもしれませんが、問題なさそうです(笑)

編集    削除
 2004-04-20 19:41:20  No: 8439  IP: [192.*.*.*]

追加ですが、親フォームのタイトルバーをダブルクリックして、
最大化すると、最大化後のマウスの位置がDbGrid上にある場合、
DbGridでOnCellClickが発生します。

どなたか解決策をお願いします。

編集    削除
 2004-04-20 19:49:49  No: 8440  IP: [192.*.*.*]

お世話になっています。
どうもDBGridのOnCellClickがいけなかったようです。
OnColEnterに処理を記述すると問題なく動くようになりました。

根本的な解決とはいえないですが....ありがとうございました。

編集    削除