ich habe mir dazu heute diesen Code ausgedacht:
Code: Alles auswählen
procedure TForm1.SpeedButton2Click(Sender: TObject);
var
i:Integer;
begin
if TreeView1.Selected <> NIL then begin
TFileItem(TreeView1.Selected.Data).Free;
TreeView1.Selected.Data:=nil;
TreeView1.Items.Delete(TreeView1.Selected);
end;
for i:=TreeView1.Items.count-1 downto 0 do begin
if (TreeView1.Items[i].Selected) then begin
TFileItem(TreeView1.items[i].Data).Free;
TreeView1.items[i].Data:=nil;
TreeView1.items.Delete(TreeView1.Items[i]);
end;
end;
end;
Sieht ihr zufällig den Fehler oder wisst eine alternative ?
Ich habe schon in anderen Foren noch einer Fertigen Lösung gesucht auch eine im DelphiForum gefunden doch leider verwenden sie eine Funktion die es unter Lazarus bei der TreeView noch nicht gibt;: SelectionCount oder so ähnlich
daher habe ich mir doch was eigenes überlegen müssen.

PS:
Ich wollte nicht die VST für dieses Kleine Tool was ich vorhabe verwenden.
Da es sich ja nur um ein kleines Tool handelt würde die VST übertrieben sein.
Außerdem hat sie mir zu viele Fehler. Sie kann z.b. unter anderem nicht mit Umlauten umgehen.
Bei der Lazarus TreeView scheint es auch keine Getnext item oder so zu geben.