Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Form.ShowModal nicht erklärbare Fehlermeldung (https://www.delphipraxis.net/170677-form-showmodal-nicht-erklaerbare-fehlermeldung.html)

Andidreas 28. Sep 2012 10:45

Delphi-Version: 5

Form.ShowModal nicht erklärbare Fehlermeldung
 
Hallo zusammen,

in meinem Projekt habe ich eine main_form in der sich ein Panel befindet... Je nachdem welche Aktion ausgeführt wird lade ich in dieses Panel andere Forms...

Bis hierher Funktioniert alles einwandfrei...
Jetzt möchte ich aus einer Form die ich im Panel hab eine weitere Form mit ShowModal anzeigen und hierbei erhalte ich die Fehlermeldung "Aus einem sichtbaren Fenster kann kein modales gemacht werden"
Aber die Form die ich mit Modal erstellen möchte wird beim Starten meines Programmes gar nicht erstellt... Hier der Source wie ich die 2. Form mit Show Modal anzeigen möchte:

Delphi-Quellcode:
  administration_masterdata_detail_form := Tadministration_masterdata_detail_form(Self);
  administration_masterdata_detail_form.Position := poMainFormCenter;
  administration_masterdata_detail_form.ShowModal;
  administration_masterdata_detail_form.Free;
  administration_masterdata_detail_form := nil;
Hat jemand eine Idee was hier schief läuft?

vagtler 28. Sep 2012 10:49

AW: Form.ShowModal nicht erklärbare Fehlermeldung
 
Zitat:

Zitat von Andidreas (Beitrag 1184812)
[...]
Delphi-Quellcode:
  administration_masterdata_detail_form := Tadministration_masterdata_detail_form(Self);
[...]

Willst Du wirklich das aufrufende Objekt auf Tadministration_masterdata_detail_form casten?

Oder hast Du das Create vergessen? ;)

Andidreas 28. Sep 2012 10:57

AW: Form.ShowModal nicht erklärbare Fehlermeldung
 
:oops: :oops: :oops: :oops: :oops: :oops: :oops:
ich möchte im erdboden versinken... kann das jemand löschen, is ja peinlich ^^

aber danke für die hilfe!!!!!

nuclearping 28. Sep 2012 11:00

AW: Form.ShowModal nicht erklärbare Fehlermeldung
 
1.) Soweit ich weiß ist das, was du vorhast, nicht möglich. Genau kann ich's dir nicht erklären ... :mrgreen: Aber du kannst kein modales Fenster "in" einem Panel anzeigen. Edit: Oder geht's etwa doch? Dachte das wäre aus Windows-designtechnischen Gründen nicht möglich? :gruebel:

2.) Statt mit Forms in Panels solltest lieber mit Frames arbeiten.

Sir Rufo 28. Sep 2012 13:22

AW: Form.ShowModal nicht erklärbare Fehlermeldung
 
Zitat:

Zitat von nuclearping (Beitrag 1184817)
1.) Soweit ich weiß ist das, was du vorhast, nicht möglich. Genau kann ich's dir nicht erklären ... :mrgreen: Aber du kannst kein modales Fenster "in" einem Panel anzeigen. Edit: Oder geht's etwa doch? Dachte das wäre aus Windows-designtechnischen Gründen nicht möglich? :gruebel:

Die Form, die eine andere Form Modal aufrufen will liegt in einem Panel nicht die Modal aufgerufenen ;)

Warum ist der Aufruf eigentlich mit umständlichen langen Namen und dann auch noch die globale Variable für diese Form:
Delphi-Quellcode:
  administration_masterdata_detail_form := Tadministration_masterdata_detail_form(Self);
  administration_masterdata_detail_form.Position := poMainFormCenter;
  administration_masterdata_detail_form.ShowModal;
  administration_masterdata_detail_form.Free;
  administration_masterdata_detail_form := nil;
Warum nicht so?
Delphi-Quellcode:
procedure ShowModalForm( const AFormClass : TFormClass );
var
  aForm : TForm;
begin
  aForm := AFormClass.Create( nil ); // da wir uns selber um das Freigeben der Form kümmern, keine Owner mitgeben
  try
    aForm.Position := poMainFormCenter;
    aForm.ShowModal;
  finally
    aForm.Free;
  end;
end;
Aufruf ist dann lapidar
Delphi-Quellcode:
ShowModalForm( Tadministration_masterdata_detail_form );


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:44 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