Delphi-PRAXiS
Seite 3 von 8     123 45     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Telefonbuch (https://www.delphipraxis.net/141423-telefonbuch.html)

DeddyH 8. Okt 2009 18:57

Re: Telefonbuch
 
Nun, dann bilde doch einfach einen String, der den Namen, den Vornamen sowie sämtliche Telefonnummern durch ein definiertes Zeichen getrennt enthält. Das Ganze kannst Du dann in einer TStringlist bzw. TStrings(die Lines des Memos) verwalten. Ein Beispiel:
Code:
//Originaldatensatz
Müller;Klaus-Bärbel;01234/12345

//eine Nummer dazu
Müller;Klaus-Bärbel;01234/12345;02345/23456
Dieser Datensatz entspricht dann einer Zeile Deiner Datei. Du kannst ihn anhand des Trennzeichens dann wieder in seine einzelnen Bestandteile zerlegen (mit Stringfunktionen wie Copy, Delete, Pos, PosEx etc. oder mit TStringlist.Delimiter/DelimitedText usw.). Sortieren geht damit auch(TStringlist.Sorted). Ich denke, als Ansatz soll das zunächst genügen.

funkuchn 8. Okt 2009 18:59

Re: Telefonbuch
 
ja als Ansatz ist das okay, aber ich habe halt das Problem, dass ich nicht weiß, wie ich das einbinde, so gut bin ich nicht, mache das echt noch nicht lange...

alleinherrscher 8. Okt 2009 19:00

Re: Telefonbuch
 
Zitat:

Zitat von DeddyH
Ich denke, als Ansatz soll das zunächst genügen.

Gute Idee! Man könnte auch immer abwechselnd Name und Telefonnummer in die Stringlist schreiben, dann spart man sich das auseinander-friemeln am schluss. Und man weiß immer, dass (angenommen wir fangen bei null an) bei den geraden Einträgen in der Liste die Namen und bei den ungeraden Einträgen die Telefonnummern stehen.

DeddyH 8. Okt 2009 19:02

Re: Telefonbuch
 
Hast Du Dir die genannten Funktionen und Methoden denn schon einmal in der Delphi-Hilfe angeschaut?

funkuchn 8. Okt 2009 19:02

Re: Telefonbuch
 
könnte ich machen, aber dann bin ich 4 stunden mit übersetzen beschäftigt..

DeddyH 8. Okt 2009 19:04

Re: Telefonbuch
 
So viele waren das ja nun auch wieder nicht. Wir helfen ja gern, aber von Dir muss auch etwas kommen. Versuch es erst einmal und wenn Du nicht weiterkommst, meldest Du Dich einfach, OK?

funkuchn 8. Okt 2009 19:05

Re: Telefonbuch
 
ich finde nicht mal einen Ansatz >.<
man ihr wart doch auch mal anfänger :cry:

DeddyH 8. Okt 2009 19:08

Re: Telefonbuch
 
Sicher waren wir das und haben uns als solche auch durchkämpfen müssen. Nochmal der Datensatz von oben:
Code:
Müller;Klaus-Bärbel;01234/12345
Da sind 2 Trennzeichen(";") drin. Alles bis zum ersten Zeichen ist der Name, danach bis zum 2. Trennzeichen der Vorname, dahinter die Telefonnummer. Das musst Du nur noch zerlegen (die DP-Suche hilft dabei sicherlich auch weiter).

alleinherrscher 8. Okt 2009 19:09

Re: Telefonbuch
 
Okay, einen Ansatz. (wobei ich hier eine leicht andere Variante verfolge als DaddyH, sry)

Du deklarierst dir unter Private eine Variable:

Delphi-Quellcode:
type
  TForm1 = class(TForm)
  private
    { Private-Deklarationen }
    Telefonbuch:Tstringlist;
  public
    { Public-Deklarationen }
  end;
Wenn dein Programm startet, musst du in der FormCreate Procedure die StringList ersteinmal "erstellen":

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
   Telefonbuch:=TStringList.create;
end;
Dann brauchst du eine Procedure, um Einträge in dein Telefonbuch (in die Stringlist) einzufügen:

Delphi-Quellcode:
procedure TForm1.Hinzufügen_Zu_Telefonbuch(EinName:String;EineTelefonnummer:string);

begin

  EinTelefonbuch.Add(EinName);
  EinTelefonbuch.Add(EineTelefonnummer);

end;
Jedes Mal, wenn du EinTelefonbuch.Add aufrufst, wird ein weiterer Eintrag in die StringList geschrieben.
D.h. ein Beispiel:

Am Anfang ist deine StringList leer. Jetzt rufst du folgende Procedure auf:

Hinzufügen_Zu_Telefonbuch('Hans Meiser','0190-99999');

Jetzt steht in der StringList:

0.: Hans Meiser
1.: 0290-99999


Meine Frage an dich: Man kann mit Eckigen Klammern auf die einzelnen Einträge der Stringlist zugreifen:

EinTelefonbuch[0] ist in unserem Fall jetzt = "Hans Meiser".

Kannst du eine FUnktion basteln, die aus dem Telefonbuch nun wieder Name und Telefonnummer ausließt? Also, wenn ich dir sage: Suche mir bitte zur zweiten Person im Telefonbuch Namen und Telefonnummer... wie könnte das gehen?

DeddyH 8. Okt 2009 19:11

Re: Telefonbuch
 
Und mehrere Telefonnummern hängst Du dann wie an?

P.S.: DeddyH bitte ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:32 Uhr.
Seite 3 von 8     123 45     Letzte »    

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