Einzelnen Beitrag anzeigen

DelphiUser7

Registriert seit: 27. Aug 2003
179 Beiträge
 
#13

Re: Hinzufügen von neuen Ereignissen zu Komponenten

  Alt 28. Okt 2003, 10:06
Also,
du gehst auf irgendeine Komponente die das OnClick-Ereignis besitzt, und erstellst dieses; da siehst du dann schon mal den Aufbau des Ereignisses;
Dann kopierst du ihn in die Zwischenablage (Strg+C), und fügst ihn nachher so ein (Strg+V):
(für Delphi 7 Datei -> Neu -> Weitere -> Komponente; bei anderen Delphi-Versionen könnte es etwas anders sein... ;
Bei Vorfahrentyp gibst du die Komponente ein, der du die Eigenschaft hinzufügen möchtest;
KlassenName: //gib den Namen der neuen Klasse bzw. Komponente ein;
Palettenseite: //gib die Palette ein, auf der du deine Neue Komponente wiederfinden willst;
Name der Unit & Suchpfad: //erledigt Delphi für dich;
Auf 'Ok' (nicht 'Installieren'!) klicken;
Hier mal als Beispiel: Meine TrackBar, die mit Mouse-Ereignissen ausgestattet wurde:

Delphi-Quellcode:
unit MouseTrackBar;

interface

uses
  SysUtils, Classes, Controls, ComCtrls;

type
  TMouseTrackBar = class(TTrackBar)
  private
    { Private-Deklarationen }
  protected
    procedure MouseUp(Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer); override;
    procedure MouseDown (Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer); override;
    procedure MouseMove (Shift: TShiftState; X, Y: Integer); override;
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
  published
    property OnMouseUp;
    property OnMouseDown;
    property OnMouseMove;
    { Published-Deklarationen }
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Beispiele', [TMouseTrackBar]);
end;

procedure TMouseTrackBar.MouseUp(Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  inherited;
end;

procedure TMouseTrackBar.MouseDown(Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  inherited;
end;

procedure TMouseTrackBar.MouseMove(Shift: TShiftState; X, Y: Integer);
begin
  inherited;
end;

end.
Habs logischerweise schon längst getestet: funzt;

Gruss
DelphiUser7
Shell...wieso musste ausgerechnet Shell Teil einer Programmiersprache werden...wieso nicht Esso, Aral oder Dea;

MfG
DelphiUser7
  Mit Zitat antworten Zitat