Zitat von
Sidorion:
...aber Du solltest nicht den Event des Vorgängers überschreiben(OnMouseDown usw.), sondern die Methode MouseDown.
Stimmt.
Zu den Schutzverletzungen:
Das scheint ein Bug im Delphi zu sein oder
wir machen was grundlegend falsch.
Bei einer einfachen Komponente (siehe Quelltext) tritt das Problem bei mir auch auf, wenn ich z.B. Arial auswähle.
Ich werde morgen mal schauen woran das liegt. Ach ja ich verwende im Moment Delphi 7. (Ich schau mal was D2006 dazu sagt.)
Delphi-Quellcode:
unit myFontDemoComponent;
interface
uses
SysUtils, Classes, Graphics;
type
TmyFontDemoComponent =
class(TComponent)
private
FFont: TFont;
procedure SetFont(
const Value: TFont);
{ Private-Deklarationen }
protected
{ Protected-Deklarationen }
public
{ Public-Deklarationen }
constructor Create(AOwner: TComponent);
override;
destructor Destroy;
override;
published
{ Published-Deklarationen }
property Font: TFont
read FFont
write SetFont;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('
Beispiele', [TmyFontDemoComponent]);
end;
{ TmyFontDemoComponent }
constructor TmyFontDemoComponent.Create(AOwner: TComponent);
begin
inherited;
FFont := TFont.Create;
end;
destructor TmyFontDemoComponent.Destroy;
begin
FFont.Free;
FFont :=
nil;
inherited;
end;
procedure TmyFontDemoComponent.SetFont(
const Value: TFont);
begin
FFont := Value;
end;
end.