Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Procedure mit TForm1 in extra Unit? (https://www.delphipraxis.net/123321-procedure-mit-tform1-extra-unit.html)

Matze 30. Okt 2008 20:30

Re: Procedure mit TForm1 in extra Unit?
 
Zitat:

Zitat von MCXSC
[...] in der nur Funktionen/Przeduren sind, die sich rund um "die" Datenbank drehen (z.B. Löschen, Erstellen, Öffnen...) und so weiter.

Das sind Dinge, die gehören eigentlich in eine eigenständige Klasse und sollten mit der VCL nichts zu tun haben. Die eingelesenen Daten des Benutzers kannst du dann an die Methoden der Datenbank-Klasse übergeben und dort verarbeiten. Die Rückgabewerte kannst du dann wieder dem Benutzer präsentieren, d.h. die Ausgabe findet wieder außerhalb der Klasse statt.

Das ist mal das verdeutlicht, was Oliver bzw. Manu geschrieben haben.

MCXSC 30. Okt 2008 20:52

Re: Procedure mit TForm1 in extra Unit?
 
Zitat:

Zitat von Matze
Das sind Dinge, die gehören eigentlich in eine eigenständige Klasse und sollten mit der VCL nichts zu tun haben. Die eingelesenen Daten des Benutzers kannst du dann an die Methoden der Datenbank-Klasse übergeben und dort verarbeiten. Die Rückgabewerte kannst du dann wieder dem Benutzer präsentieren, d.h. die Ausgabe findet wieder außerhalb der Klasse statt.

Joa, das habe ich schon verstanden. Die Sache mit der Eingabe wird ja auch so gemacht. Nur: Wie bekomme ich die Rückgabewerte wieder zurück? Dafür müsste dann ja für jede Aufgabe eine zweite Procedur im jeweiligen Form her?

Sir Rufo 30. Okt 2008 21:01

Re: Procedure mit TForm1 in extra Unit?
 
Zitat:

Zitat von MCXSC
Nur: Wie bekomme ich die Rückgabewerte wieder zurück? Dafür müsste dann ja für jede Aufgabe eine zweite Procedur im jeweiligen Form her?

Mit einer entsprechende Schnittstelle:

Delphi-Quellcode:
funtion TuWasUndGibEsZurück( var Daten : TDaten ) : boolean;
begin
  {Hier tue ich was mit den Daten}
end;
oder meinetwegen

Delphi-Quellcode:
funtion TuWasUndGibEsZurück( Daten : TDaten; var Ergebnis : TErgebnis ) : boolean;
begin
  {Hier tue ich was mit den Daten und pack das in Ergebnis}
end;
oder

Delphi-Quellcode:
funtion TuWasUndGibEsZurück( var Daten : TDaten ) : TErgebnis;
begin
  {Hier tue ich was mit den Daten und dann}
  RESULT := { das Ergebnis zurückliefern }
end;
cu

Oliver

MCXSC 30. Okt 2008 21:14

Re: Procedure mit TForm1 in extra Unit?
 
Nur damit verdreifacht (oder noch mehr) sich ja die Anzahl der Funktionen... Wenn ich z.B. Name, Vorname und PLZ auslesen will, muss ich ja a) für jedes Feld eine Function schreiben und b) für jedes Feld die Funktion gesondert aufrufen...

Sir Rufo 30. Okt 2008 21:20

Re: Procedure mit TForm1 in extra Unit?
 
ja, oder du schreibst eine entsprechende Klasse:
Delphi-Quellcode:
TDaten = record
  Vorname : string;
  Nachname : string;
  PLZ : string;
  Ort : string;
end;
und die lässt du dir zurückgeben.

Wie ich schon sagte, mit entsprechenden und _geeigneten_ Schnittstellen

cu

Oliver


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:50 Uhr.
Seite 3 von 3     123   

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