was ich auch ein bisschen komisch finde ist, so bekomme ich einen Fehler wenn ich die Komponente ins Fenster reinklick
Delphi-Quellcode:
constructor TDirectoryTree.Create(AOwner: TComponent);
var tmpNode: TTreeNode;
begin
inherited Create(AOwner);
if csDesigning in Self.ComponentState then begin
Try
imgList := TImageList.Create(AOwner);
messagebeep(16);
imgList.Masked := False;
imgList.BkColor := Color;
imgList.AddIcon(GetShellIcon(NAME_DESKTOP));
Images := imgList;
//Desktop hinzufügen
tmpNode := Items.Add(nil, GetShellDescription(NAME_DESKTOP));
tmpNode.ImageIndex := ICON_DESKTOP;
tmpNode.SelectedIndex := ICON_DESKTOP;
tmpNode.StateIndex := -1;
Finally
Try
imgList.Free;
Except
End;
End;
end;
end;
So aber nicht:
Delphi-Quellcode:
constructor TDirectoryTree.Create(AOwner: TComponent);
var tmpNode: TTreeNode;
begin
inherited Create(AOwner);
if csDesigning in Self.ComponentState then begin
Try
Try
imgList := TImageList.Create(AOwner);
messagebeep(16);
imgList.Masked := False;
imgList.BkColor := Color;
imgList.AddIcon(GetShellIcon(NAME_DESKTOP));
Images := imgList;
//Desktop hinzufügen
tmpNode := Items.Add(nil, GetShellDescription(NAME_DESKTOP));
tmpNode.ImageIndex := ICON_DESKTOP;
tmpNode.SelectedIndex := ICON_DESKTOP;
tmpNode.StateIndex := -1;
Except
End;
Finally
imgList.Free;
End;
end;
end;
Sobald die Komponente dann aber in meiner Form ist geht es auch ohne Trys und die Node wird einwandfrei gezeichnet.