Hallo,
ich habe folgende Komponente erzeugt:
Type
TComboBoxtst = class(TCombobox)
private
protected
Procedure HoleItems(items:TStrings);
public
constructor Create(AOwner: TComponent);override;
destructor Destroy;override;
end;
implementation
Procedure TComboBoxtst.HoleItems(items:TStrings);
begin
items.add('Test1');
items.add('Test2');
end;
constructor TComboBoxtst.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
HoleItems(items);
style:=csOwnerdrawFixed;
width:=200;
end;
Destructor TComboboxtst.Destroy;
begin
inherited;
end;
Ich möchte also die Einträge beim Create setzen, eventuell noch Symbole im ONDRAWITEM dazu zeichen.
Bein ADD in Holeitems wird aber wahrscheinlich onPaint aufgerufen und das benötigt einen Parent. Wenn ich den nicht habe, kommt : Element " hat kein übergeordnetes Fenster.
Mit
if AOwner is TWinControl then
Self.Parent := TWinControl(AOwner)
im Create bekomme ich aber immer nur TFORM als Parent.
Bestimmt gibt es eine Lösung...
Danke, Gruß Holger
ich habe folgende Komponente erzeugt:
Type
TComboBoxtst = class(TCombobox)
private
protected
Procedure HoleItems(items:TStrings);
public
constructor Create(AOwner: TComponent);override;
destructor Destroy;override;
end;
implementation
Procedure TComboBoxtst.HoleItems(items:TStrings);
begin
items.add('Test1');
items.add('Test2');
end;
constructor TComboBoxtst.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
HoleItems(items);
style:=csOwnerdrawFixed;
width:=200;
end;
Destructor TComboboxtst.Destroy;
begin
inherited;
end;
Ich möchte also die Einträge beim Create setzen, eventuell noch Symbole im ONDRAWITEM dazu zeichen.
Bein ADD in Holeitems wird aber wahrscheinlich onPaint aufgerufen und das benötigt einen Parent. Wenn ich den nicht habe, kommt : Element " hat kein übergeordnetes Fenster.
Mit
if AOwner is TWinControl then
Self.Parent := TWinControl(AOwner)
im Create bekomme ich aber immer nur TFORM als Parent.
Bestimmt gibt es eine Lösung...
Danke, Gruß Holger
Comment