AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Exception wird nicht angezeigt - Ist das ein Fehler?
Thema durchsuchen
Ansicht
Themen-Optionen

Exception wird nicht angezeigt - Ist das ein Fehler?

Ein Thema von samso · begonnen am 9. Dez 2016 · letzter Beitrag vom 9. Dez 2016
 
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.771 Beiträge
 
Delphi 12 Athens
 
#4

AW: Exception wird nicht angezeigt - Ist das ein Fehler?

  Alt 9. Dez 2016, 08:46
Es ist tatsächlich so, daß die Exception-Meldung das aktive Fenster als Parent benutzt. Dieses hat aber zu diesem Zeitpunkt bereits ein CM_RELEASE in der Message-Queue, von dem es aber noch nichts weiß.

Jetzt könnte man ja hingehen und bei der Anzeige der Exception-Box nachschauen, ob so eine Message im aktiven Fenster in der Queue steht, aber das würde auch nur diesen einen Fall abdecken. Es kann ja auch sein, daß dieses Release erst später z.B. durch einen Timer ausgelöst wird. Womöglich ist das Verschwinden der Message-Box dann ja auch erwünscht.

In solchen Fällen ist dann wohl der Entwickler gefragt, der ja um diese Besonderheiten wissen sollte. Hier müsste also das Parent-Fenster für die Message-Box gezielt auf ein valides anderes Fenster umgelegt werden. Konkret lässt sich das in dem Beispielprojekt durch ein simples SetFocus erreichen. Wie das im produktiven Fall am sinnvollsten umgesetzt werden kann, vermag ich so nicht zu sagen.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Application.CreateForm(TForm2, Form2);
  try
    Form2.Show;
    raise Exception.Create('Ein Fehler');
  finally
    SetFocus;
    Form2.Release;
  end;
end;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:21 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz