Du musst im FormCreate diese Zeile rausnehmen:
WindowState := wsMaximized;
Und hier solltest du die Liste rückwärts durchlaufen. Statt:
Delphi-Quellcode:
Procedure Tf_hauptfenster.Titelleisteknopf_entfernen(Knopfname:String);
var i: Integer;
begin
for i := 0 to tb_taskleiste.ComponentCount-1 do
begin
IF tb_taskleiste.Components[i].Name = Knopfname Then tb_taskleiste.Components[i].Free;
end;
end;
besser:
Delphi-Quellcode:
Procedure Tf_hauptfenster.Titelleisteknopf_entfernen(Knopfname:String);
var i: Integer;
begin
for i := tb_taskleiste.ComponentCount-1 downto 0 do
begin
IF tb_taskleiste.Components[i].Name = Knopfname Then tb_taskleiste.Components[i].Free;
end;
end;
Sonst greifst du unter Umständen auf Objekte zu, die nicht mehr existieren.