Telefonbuch
-
Moin
ich habe vor, mir ein kleines Telfonbuch zu schreiben, in dem Nummern von Personen gespeichert werden.
Bisher funktioniert alles ziehmlich gut, bis auf die Tatsache, dass immer nur ein Wert eingelesen werden kann.
Hier der Quelltext:
#include <vcl.h> #pragma hdrstop #include <direct.h> #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { TStringList *userName = new TStringList(); userName->Add(Name->Text.c_str()); userName->SaveToFile("Name"); delete userName; TStringList *userNummer = new TStringList(); userNummer->Add(Nummer->Text.c_str()); userNummer->SaveToFile("Nummer"); delete userNummer; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { TStringList *list = new TStringList(); list->LoadFromFile("Name"); for (int z = 0; z < list->Count; ++z) { ListBox1->AddItem(list->Strings[z], 0); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button3Click(TObject *Sender) { TStringList *list_nr = new TStringList(); list_nr->LoadFromFile("Nummer"); for (int i = 0; i < ListBox1->Items->Count; i++) { if (ListBox1->Selected[i]) { Panel1->Caption = list_nr->Strings[i]; } } }Ich glaube das ist so, weil ich keine Verbidung zwichen den in "Name" und in "Nummer" gespeicherten Informationen habe.
Kann mir jemand helfen ?
Danke schon mal im Vorraus

-
Ich würde ein richtiges telefonbuchprogramm mit einer kleinen db im hintergrund schreiben
und vor dem speichern solltest du die gesamte datei in die stringlist laden, neue informationen da anhängen, und dann wieder in die datei speichern (überschreiben)!
irgendwie komm ich mit deiner lösung nicht so richtig klar....

auch würde ich viell ein struct oder eine class für das sammeln der daten (name, nummern etc..) verwenden
-
Hallo
Ich würde auch eine vernünftige DB bevorzugen.
Aber selbst wenn du bei Textdateien bleiben willst, dann nimm wenigstens eine einzelne CSV-Datei anstatt für jede Spalte (Name und Nummer) eine eigene Datei.
Desweiteren solltest du deinen Controls sinnvolle Namen geben, denn Methoden namens Button1Click bis Button3Click sind nicht sehr aussagekräftig.
bis bald
akari