Einzelnen Beitrag anzeigen

nahpets
(Gast)

n/a Beiträge
 
#3

Re: Form von Unit aus kontrollieren/steuern

  Alt 9. Jan 2009, 13:11
Hallo,

wie ist das gedacht?

Deine Units machen irgendwas, dann wird das Formular angezeigt und Du wartest auf eine Benutzeraktion. Abhängig von dieser Benutzeraktion soll irgendetwas geschehen (weitermachen, wiederholen, abbrechen, was auch immer).
Wenn Du das Formular in diesem Fall mit ShowModal aufrufst, könntest Du jedem Button über ModalResult einen anderen Wert zuweisen (hier sind Integerwerte möglich, also mehr, als der Objektinspektor als Vorschläge zur Verfügung stellt).
In den Units kannst Du dann z. B. über
Delphi-Quellcode:
  case FortschrittsDialog.ShowModal of
    1 : //
    2 : //
    ...
  else
    // Defaultaktion
  end;
abfragen, was der Benutzer gemacht hat.
Dies funktioniert jedoch nicht, wenn das Formular permanent angezeigt werden soll.

Eine andere Möglichkeit wäre, in den Units den Dir bekannte Buttons... auf dem Formular Ereignisse zuzuweisen, die in der Unit definiert sind, so kann jede Unit ihre eigenen Ereignisroutinen mitbringen und das Formular führt die entsprechende Funktion aus.
Delphi-Quellcode:
// in Deiner Unit definiert
procedure myEnde(Sender: TObject);
begin
  Fmyform.Close;
  // und irgendwas weiteres an Code
end;
...
  Fmyform := TTestFormFrm.Create(nil);
  Fmyform.OnClick := myEnde;
  // u.s.w. für jeden Button, auch OnEdit, OnClick, OnExit für Eingabefelder... sind möglich,
  // also alles das, was Du auch in der Formularunit machen könntest
  Mit Zitat antworten Zitat