Hallo,
ich habe ein Problem bei den Tstrings. Scheinbar kann ich ihnen nichts zuweisen
! Ich bekomme bei folgendem Code immer eine Zugrifsvereltzung (Stelle mit Kommentar gekennzeichnet):
Delphi-Quellcode:
type TSeite = record
name: string;
Code: Tstrings;
Geschichte: Tstrings;
Backgroundcolor:Tcolor;
end;
var
Form1: TForm1;
Seiten: array[0..99999] of TSeite;
AktiveSeite:integer;
implementation
{$R *.dfm}
Function Tform1.FreieSeite():integer;
var i:integer;
begin
for i:=0 to 99999 do begin
if Seiten[i].Name=''
then begin
result:=i;
break;
end;
end;
end;
Procedure Tform1.SeitenUpdate;
var i:integer;
begin
Listbox1.Clear;
for i:=0 to 99999 do begin
if Seiten[i].Name<>''
then begin
Listbox1.items.add(Seiten[i].name);
end;
end;
end;
Function Tform1.NummerbeiName(Name:String):integer;
var i:integer;
begin
for i:=0 to 99999 do begin
if Seiten[i].Name=Name
then begin
result:=i;
break;
end;
end;
end;
procedure TForm1.BtnNoteClick(Sender: TObject);
var SName:String;
Free:integer;
begin
SName:=inputbox('Seitenname eingaben','Bitte geben Sie hier einen Seitennamen ein:'+#10#13+'Bitte achten Sie darauf, dass kein Seitenname doppelt sein darf!','');
If SName<>''
then begin
Free:=FreieSeite;
Seiten[Free].Name:=SName; {AB HIER IST DER FEHLER}
Seiten[Free].Code.Add('ee');
Seiten[Free].Geschichte.Add('ee');
Seitenupdate;
SName:='';
end;
end;
procedure TForm1.ListBox1Click(Sender: TObject);
begin
AktiveSeite:=NummerbeiName(Listbox1.Items[Listbox1.itemindex]);
Richedit1.Lines:=Seiten[AktiveSeite].Geschichte;
Code.Items:=Seiten[AktiveSeite].Code;
end;
procedure TForm1.FormShow(Sender: TObject);
begin
AktiveSeite:=-1;
end;
end.
Danke für Eure Mühe!
Andy
Ps: Sorry dass ich da den ganzen Code gepostet habe aber ich weiß nicht an was es liegt
Delphi is ......... DELPHI!!