Thema: Delphi Eigene Shape Formen

Einzelnen Beitrag anzeigen

Benutzerbild von halinchen
halinchen

Registriert seit: 13. Jun 2006
508 Beiträge
 
Delphi 2007 Professional
 
#9

Re: Eigene Shape Formen

  Alt 14. Feb 2007, 15:41
Nein, aber das lässt sich alles übernehmen.

Ich würde erstmal ein Komponente ableiten.
Dann würde den Typ TShape so überschrieben, dass sie man da auch ein Karo auswählen kann.
(da
published property Shape: TShapeType read FShape write SetShape; )

Dann musst du die Paint-Prozedur überschrieben.
Delphi-Quellcode:
unit Shape1;

interface

uses
  SysUtils, Classes, Controls, ExtCtrls;

type
  TShapeType = (stCircle,stEllipse,stRectangle,stRoundRect,stRoundSquar,stSquare,stKaro) //stKaro ist neu.

  TMyShape = class(TShape)
  private
    { Private-Deklarationen }
  protected
    { Protected-Deklarationen }
     protected procedure Paint();override;
  public
    { Public-Deklarationen }
  published
    { Published-Deklarationen }
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Samples', [TShape1]);
end;

end.

procedure TMyShape.Paint();
begin
  inherited; //ruft die Ursprüngliche Prozedur "Paint" auf. Bin mir jetzt nicht sicher ob das vor oder nach deinem hinzugefügen Code stehen muss
    If Self.Shape = stKaro then begin
    //Mach was
  end;
end;
Ich hoffe das das erstmal stimmt was ich da geschrieben habe. (Eventuell berichtigen )
  Mit Zitat antworten Zitat