Einzelnen Beitrag anzeigen

Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#1

Event wird ausgelöst, obwohl es nicht sein sollte

  Alt 17. Aug 2009, 20:51
Hallo alle miteinander...

Ich kann diesen tollen Effekt nicht nachvollziehen.

Gegebenheiten:
- man nehme 2 Forms. (der Einfachheit halber Form1, Form2)
- auf Form1 ein JvDBGrid
- OnTitleClick des JvDBGrid wird ausgewertet. (Sortierung)
- Form2 wird aus Form1 modal angezeigt
- auf Form2 ein JvDBTreeView
- im DoppelklickEvent des JvDBTreeView wird nur Form2.Close aufgerufen.

Das Problem:
- wenn Form2 so ungünstig positioniert ist, daß der Klickpunkt über dem Titel vom JvDBGrid auf Form1 liegt
wird nach dem Schließen von Form2 OnTitleClick des JvDBGrids ausgelöst.
- es fühlt sich an, als würde ich durch Form2 durchklicken. OnTitleClick wird aber erst ausgelöst, wenn Form2 geschlossen ist

was ich probiert habe:
- beim Durchsteppen mit F9 durch die nach der Rückkehr aus Form2.ShowModal vorhandenen Anweisungen wird OnTitleClick nicht ausgelöst
- ein einziger Breakpoint nur in OnTitleClick wird immer angesprungen
- ShowMessage vor Form2.Close verhindert OnTitleClick ( auch mit dem OK Button über dem Titel )
- Application.ProcessMessages vor Form2.Close verhindert OnTitleClick nicht
- OnTitleClick:= nil vor Form2.ShowModal und Zuweisung nach Rückkehr landet immer in OnTitleClick

...jetzt gehen mir langsam die Ideen aus.

Wo kommt dieser Klick her ?

PS:
- das Kompilat verhält sich auch auf verschiedenen Systemen gleich.
- eine Demo mit einem Label (Form2) und einem Panel (auf Form1) hat diesen Effekt nicht

Viel Spaß beim Raten

Danke für Infos
  Mit Zitat antworten Zitat