| Autor |
Beitrag |
MKzero
Hält's aus hier
Beiträge: 4
|
Verfasst: So 14.01.07 18:47
Benötige für die Schule ein kleines Beispielprogramm in Delphi.
Habe jetzt hin und her probiert und komme einfach nicht weiter:
Habe mir gedacht ein klitze-kleines Adressbuch zu nehmen. Nur mit Vorname, Nachname und Telefonnummer.
Meine Aufgabe:
Zeigen Sie am Beispiel einer kleinen Datenbank(Programm in Delphi) die Deklaration und die Verwendung der Datentypen „Feld“, „Verbund“, „Datei“ und „Menge“.
Kann mir jemand weiterhelfen, wie ich Datei und Menge da einbauen kann? Was bringt mir das Feld in diesem Fall? Wie kann ich die Ausgabe sinnvoll darstellen?
Quelltext:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44:
| ...
type TGeburtsdatum=record Tag:1..31; Monat:1..12; Jahr:1900..2007; end;
type TPerson=record Vorname:string[25]; Nachname:string[20]; Telefon:integer; Geburtsdatum:TGeburtsdatum; end;
type Adressliste=array[1..3] of TPerson;
var Form1: TForm1; Person:Adressliste; x:integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); begin
for x:=1 to 3 do with Person[x] do begin Nachname:=Edit1.Text; Vorname:=Edit2.Text; with Geburtsdatum do begin Tag:=StrToInt(Edit3.Text); Monat:=StrToInt(Edit4.Text); Jahr:=StrToInt(Edit5.Text); end; end;
... |
Moderiert von Christian S.: Delphi-Tags hinzugefügt
Moderiert von Christian S.: Titel geändert. (Hilfe will hier jeder )
|
|
jaenicke
      
Beiträge: 19343
Erhaltene Danke: 1752
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 14.01.07 19:42
Erstmal  hier im Forum!
Ist die Aufgabe nun etwas mit einer (echten) Datenbank zu machen oder sowas, was du gemacht hast?
MKzero hat folgendes geschrieben: | Meine Aufgabe:
Zeigen Sie am Beispiel einer kleinen Datenbank(Programm in Delphi) die Deklaration und die Verwendung der Datentypen "Feld", "Verbund", "Datei" und "Menge". |
Ein Feld, also ein Array hast du ja schon. Was soll Verbund sein? Ein Record?
Datei? www.dsdt.info/tutorials/typdateien/
Menge? Delphi-Quelltext 1: 2: 3:
| type TKleidungsstueck = (klsHut, klsJacke, klsHose, klsSchuhe); TKleidung = set of TKleidungsstueck; |
|
|
MKzero 
Hält's aus hier
Beiträge: 4
|
Verfasst: So 14.01.07 20:05
Naja, ist im Info Unterricht der 13. Klasse! Habe mir gedacht das es mit ner Tabelle(StringGrid) als Ausgabe ist.
Mit der Menge verstehe ich noch nicht! Heißt das, das Vorname, Nachname und z.B. Telefonnummer eine Menge von Person ist? Ist also so ähnlich wie Verbungd(Record)? Was bringt mir dann eine Menge in meinem Beispiel?
Das Feld habe ich schon drin, weiß aber nicht was es mir in diesem Fall bringt!
Und dann noch das Problem mit Datei(File)! Gibt es dafür ein Beispiel? Kann mal eine ganze Tabelle(StringGrid) speichern? Wenn ja, wäre ein kleines Beispiel ganz nett!
Als Anhang seht ihr mein momentanes Programm!
Einloggen, um Attachments anzusehen!
|
|
oldmax
      
Beiträge: 380
D3 Prof, D4 Prof
|
Verfasst: Mo 15.01.07 07:52
Hi
Ich glaube, was du suchst habe ich schon einmal ziemlich ausführlich beschrieben. Geh einfach in die Suche und gebe unter Autoren "Oldmax" ein. Dort findest du unter Datenbank für Adressbuch gesucht einen ausführlichen Beitrag. Ist aber schon gut 4 monate her.
Viel Spaß damit
Gruß Oldmax
_________________ Zier dich nich so, ich krieg dich schon....
|
|
jaenicke
      
Beiträge: 19343
Erhaltene Danke: 1752
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mo 15.01.07 09:30
MKzero hat folgendes geschrieben: | | Mit der Menge verstehe ich noch nicht! Heißt das, das Vorname, Nachname und z.B. Telefonnummer eine Menge von Person ist? Ist also so ähnlich wie Verbungd(Record)? Was bringt mir dann eine Menge in meinem Beispiel? |
Eine Menge enthält einen oder mehrere Elemente. In meinem Beispiel dachte ich, würde das klar werden. In einer Variable vom Typ Kleidung können ein oder mehrere Elemente aus TKleidungsstueck enthalten sein. Zum Beispiel nur klsJacke und klsHose...
Ob ein Element enhalten ist, kannst du mit Delphi-Quelltext 1: 2: 3: 4: 5:
| var test: TKleidung; begin test := [klsHut, klsHose]; CheckBox1.Checked := klsHut in test; | feststellen, so wie hier kannst du ja mehrere CheckBoxen verwenden.
MKzero hat folgendes geschrieben: | | Das Feld habe ich schon drin, weiß aber nicht was es mir in diesem Fall bringt! |
Ich hätte statt Delphi-Quelltext 1: 2: 3: 4: 5: 6:
| type Adressliste=array[1..3] of TPerson;
var Form1: TForm1; Person:Adressliste; | lieber Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| var Form1: TForm1; Person: array of TPerson;
SetLength(Person, Length(Person) + 1);
SetLength(Person, Length(Person) - 1); | genommen, weil sonst ist die Anzahl der Personen ja fest. Komisches Adressbuch...
MKzero hat folgendes geschrieben: | | Und dann noch das Problem mit Datei(File)! Gibt es dafür ein Beispiel? Kann mal eine ganze Tabelle(StringGrid) speichern? Wenn ja, wäre ein kleines Beispiel ganz nett! |
Du solltest lieber die Daten selbst speichern statt dem Inhalt des StringGrids... Das Tutorial wie sowas geht, habe ich doch verlinkt...
|
|
MKzero 
Hält's aus hier
Beiträge: 4
|
Verfasst: Mi 17.01.07 17:46
Danke für die vielen Tipps! Bekomme das Tutorial nicht auch mein Projekt übertragen!
Mit der Menge ist jetzt schon deutlicher geworden, habe es mit Bundesländern gemacht! Was ist wenn ich überprüfen möchte, ob in einem Edit-Feld ein Element der Menge steht? Das funktionmiert nicht wie ich es mir denke!
Die Deklaration:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| type TBundesland=(Berlin,Brandenburg,Sachsen); Ort=set of TBundesland;
type TPerson=record Vorname:string[25]; Nachname:string[25]; Telefon:integer; Geburtsdatum:TGeburtsdatum; Ort:string[25]; end; type Adressliste=array[1..4] of TPerson; |
In Programm:
Delphi-Quelltext 1: 2:
| Bundesland:=(Edit1.Text); if Bundesland in Ort then Edit2.Text:="ja"; |
Aber so funktioniert das nicht! Kann mir jemand helfen?
Moderiert von raziel: Delphi-Tags hinzugefügt
|
|
|