ich hänge nun schon ziemlich lange bei der Programmierung eines Vokabeltrainers fest.
Das ganze soll über ein zweidimensionales Array (Array1: Array of Array [1..3] of String) funktionieren. Ich persönlich habe davor noch nie mit Arrays gearbeitet.
Nun kann ich mittlerweile Vokabeln in eine ausgewählte Liste hinzufügen und mich auch genau diese (die in der ausgewählten Vokabelliste gespeichert sind) abfragen lassen.
Jedoch funktioniert es nicht auch genau diese Vokabeln (und nicht die Vokabeln aus einer anderen Liste) in einer Tabelle als Übersicht darzustellen.
D.h. ich habe eine Tabelle in der immer ALLE Vokabeln angezeigt werden, was ich aber gar nicht möchte, sondern eben nur die aus der ausgewählten Vokabelliste.
Ich habe den Quelltext schon gefühlte 1000x umgeschrieben, bisher ohne Erfolg. Auch Freunde, die sich mit Arrays besser auskennen, konnten mir nicht konkret weiterhelfen. :/
Nun suche ich hier nach Hilfe, um endlich zu einem positiven Ergebnis zu kommen.
Dies ist ein kleiner Ausschnitt aus meinem Quelltext:
Code: Alles auswählen
procedure TForm1.Button15Click(Sender: TObject);
var v1,v2:string;
begin
v1 := Edit4.Text;
v2 := Edit5.Text;
Hinzufuegen(IntToStr(Listbox1.ItemIndex),v1,v2);
Uebersicht(IntToStr(ListBox1.ItemIndex),v1,v2);
end;
___
procedure TForm1.Hinzufuegen (Liste,Vokabel_Sprache1, Vokabel_Sprache2: string); // zum Hinzufügen von neu eingegebenen Vokabeln in das Array
var a1 : integer;
begin
a1 := Length (Array1);
SetLength (Array1, a1+1);
Array1[a1,1] := Liste;
Array1[a1,2] := Vokabel_Sprache1;
Array1[a1,3] := Vokabel_Sprache2;
end;
___
procedure TForm1.Uebersicht (const Liste2,v,u:string);
begin
StringGrid1.RowCount := StringGrid1.RowCount +1;
StringGrid1.Cells[0,(StringGrid1.RowCount)-1] := v;
StringGrid1.Cells[1,(StringGrid1.RowCount)-1] := u;
end;
___
function TForm1.Abfragen (const Liste3:string; const Richtung : integer):string;
var i :integer; r:string;
begin
Repeat
begin
randomize;
i := random(length(array1));
end;
until array1[i,1] = Liste3;
r :=array1[i, Richtung];
result := r;
Label15.Caption := array1[i,3];
end;
Vielen Dank im Voraus und LG, Tessi (: