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:
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.
//Originaldatensatz
Müller;Klaus-Bärbel;01234/12345 //eine Nummer dazu Müller;Klaus-Bärbel;01234/12345;02345/23456 |
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...
|
Re: Telefonbuch
Zitat:
|
Re: Telefonbuch
Hast Du Dir die genannten Funktionen und Methoden denn schon einmal in der Delphi-Hilfe angeschaut?
|
Re: Telefonbuch
könnte ich machen, aber dann bin ich 4 stunden mit übersetzen beschäftigt..
|
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?
|
Re: Telefonbuch
ich finde nicht mal einen Ansatz >.<
man ihr wart doch auch mal anfänger :cry: |
Re: Telefonbuch
Sicher waren wir das und haben uns als solche auch durchkämpfen müssen. Nochmal der Datensatz von oben:
Code:
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).
Müller;Klaus-Bärbel;01234/12345
|
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:
Wenn dein Programm startet, musst du in der FormCreate Procedure die StringList ersteinmal "erstellen":
type
TForm1 = class(TForm) private { Private-Deklarationen } Telefonbuch:Tstringlist; public { Public-Deklarationen } end;
Delphi-Quellcode:
Dann brauchst du eine Procedure, um Einträge in dein Telefonbuch (in die Stringlist) einzufügen:
procedure TForm1.FormCreate(Sender: TObject);
begin Telefonbuch:=TStringList.create; end;
Delphi-Quellcode:
Jedes Mal, wenn du EinTelefonbuch.Add aufrufst, wird ein weiterer Eintrag in die StringList geschrieben.
procedure TForm1.Hinzufügen_Zu_Telefonbuch(EinName:String;EineTelefonnummer:string);
begin EinTelefonbuch.Add(EinName); EinTelefonbuch.Add(EineTelefonnummer); end; 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? |
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. |
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