Ich hab den Code von dir jetzt bei mir eingefügt:
Delphi-Quellcode:
unit TestComponent;
interface
uses
SysUtils, Classes, DesignEditors, DesignIntf;
type
TTestComponent =
class(TComponent)
private
{ Private-Deklarationen }
protected
{ Protected-Deklarationen }
public
{ Public-Deklarationen }
published
{ Published-Deklarationen }
end;
TComponentMeineAuswahlEditor =
class(TStringProperty)
public
procedure GetValues(Proc: TGetStrProc);
override;
function GetAttributes: TPropertyAttributes;
override;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('
cYaONE', [TTestComponent]);
RegisterPropertyEditor(TypeInfo(
String), TTestComponent,
'
MeineAuswahl', TComponentMeineAuswahlEditor);
end;
function TComponentMeineAuswahlEditor.GetAttributes: TPropertyAttributes;
begin
// the property editor will provide a sorted list of possible values
Result := [paValueList, paSortList];
end;
procedure TComponentMeineAuswahlEditor.GetValues(Proc: TGetStrProc);
begin
// for each possibility call proc with the string
Proc('
Wert 1');
Proc('
Wert 2');
Proc('
Wert 3');
Proc('
Wert 4');
Proc('
Wert 5');
Proc('
Wert 6');
end;
end.
Das lässt sich auch einwandfrei kompilieren, doch im Objektinspektor ist nichts zu sehn ...
... ich weiß, das liegt daran das ich noch keine Property gesetzt habe, aber auf was muss die Property verweisen?