Jeg har to StringList's, hvor den ene skal bruges til at logge alt der der står i den anden...
I StringList1 er der konstant 16 linier, dvs. når der tilføjes en ny i toppen, forsvinder den nederste...
StringList2 ta'r så og logger det hele - dvs. at hvis der tilføjes linier øverst i StringList1, såtilføjes de også øverst i StringList2, men der bli'r ikke fjernet noget fra bunden..
problemet er så, at der til tider bli'r tilføjet 2, 3 eller 4 linier i toppen på en gang (en opdatering), men det har jeg løst ved at bruge denne funktion:
function TMainForm.GetNewLines(): Integer; var I: Integer; begin Result := -1; for I := 0 to StringList1.Count -1 do if StringList1.Strings[I] = StringList2.Strings[0] then begin Result := I; Break; end; end;
Men men men... Hvis der er nogle af linierne i StringList1 der er ens, så går det galt, for så får den ikke alle linier med... det er lidt noget bøv..
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
procedure TForm1.FormCreate(Sender: TObject); var i : Integer; begin Randomize; StringList1 := TStringList.Create; StringList2 := TStringList.Create; for i := 0 to 15 do StringList1.Add(IntToStr(i)); StringList2.Assign(StringList1); Counter := 0; end;
procedure TForm1.Button1Click(Sender: TObject); var i,j,k : Integer; begin j := random(4); for i := 0 to j do begin inc(Counter); Counter := Counter mod 15; k := Random(15); StringList1[counter] := IntToStr(k); end;
for i := 0 to 15 do if StringList2.IndexOf(StringList1[i]) = -1 then StringList2.Add(StringList1[i]); end;
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.