Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Schalterstatus von Unterformular an Hauptform übergeben (https://www.delphipraxis.net/113542-schalterstatus-von-unterformular-hauptform-uebergeben.html)

devidespe 9. Mai 2008 16:02


Schalterstatus von Unterformular an Hauptform übergeben
 
Hallo,

ich habe eine normale Delphi-Applikation, die einen Schalter in der Mitte hat. Nach dem Aufruf des Schalters wird ein Unterformular geöffnet, welches wiederum einen OK und einen Abbruch-Schalter hat. Die Schalter des Unterformulars sind BitBtn-Schalter, bei denen die Eigenschaft Kind jeweils auf bkOK bzw. bkAbort gesetzt ist.

Wie kann ich nun im Hauptformular, wovon ich das Unterformular aufrufe, abfragen welcher Schalter im Unterformular gedrückt wurde ?

Der Code im Hauptformular zum Öffnen des Untertformulars sieht wiefolgt aus:

Delphi-Quellcode:
PROCEDURE TMainForm.Button1Click(Sender: TObject);
VAR Unterformular : FormNeuesFormular.TNeuesFormular;
BEGIN
  Unterformular:=FormNeuesFormular.TNeuesFormular.Create(Application);
  TRY
    Unterformular.ShowModal;
  FINALLY
    Unterformular.Free;
  END;
END;
Meine Vermutung wäre irgendetwas direkt nach ShowModal. Hat jemand eine Idee ?

grenzgaenger 9. Mai 2008 16:06

Re: Schalterstatus von Unterformular an Hauptform übergeben
 
Zitat:

Zitat von devidespe
Delphi-Quellcode:
PROCEDURE TMainForm.Button1Click(Sender: TObject);
VAR Unterformular : FormNeuesFormular.TNeuesFormular;
BEGIN
  Unterformular:=FormNeuesFormular.TNeuesFormular.Create(Application);
  TRY
    Unterformular.ShowModal;
  FINALLY
    Unterformular.Free;
  END;
END;

zum beispiel, in dem du den wert modalresult abfrägst

Delphi-Quellcode:
if Unterformular.ShowModal = mrOK then ...

RavenIV 9. Mai 2008 16:07

Re: Schalterstatus von Unterformular an Hauptform übergeben
 
ShowModal kann einen Wert zurückgeben.
Bei Schalter-1 setzt Du ModalResult des zweiten Forms auf einen Wert, bei Schalter-2 auf einen anderen Wert.

Und dann im ersten Form:
if ZweitesForm.ShowModal = "Schalter-1-gedrückt" then...

Oder so ähnlich ;-)

Fussball-Robby 9. Mai 2008 16:10

Re: Schalterstatus von Unterformular an Hauptform übergeben
 
Delphi-Quellcode:
  if Form2.ShowModal = mrOk then
    ShowMessage('OK!')
  else
    ShowMessage('Abort!');

devidespe 9. Mai 2008 17:14

Re: Schalterstatus von Unterformular an Hauptform übergeben
 
Danke, werde ich probieren.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:37 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz