Einzelnen Beitrag anzeigen

Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Komponente und Ereignis in unit auslagern

  Alt 22. Mai 2005, 21:43
Du darfst der bild.onmouseup-Ereignis nur eine Objektmethode zuweisen, sprich eine Methode eines Objekts.
Du weißt ihr aber per harten (fehlerhaften) Pointeroperationen eine normale Funktion zu!

So könntest du die Ereignisse auslagern (Alternativ du definierst eine eigene Basis-Formularklasse, welche schon einige Zusatzfunktionen besitzt):

Delphi-Quellcode:
type
  TMyObj = class(TObject);
  private
    bild: TImage;

    procedure mouseup(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
  public
    procedure start11(ParentForm: TForm);
  end;

implementation

procedure TMyObj.start11(ParentForm: TForm);
begin
  bild := Timage.Create(self);
  bild.parent := ParentForm;
  bild.onmouseup := mouseup;
end;

procedure TMyObj.mouseup(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  //irgendwas (Berechnungen ohne an irgendwelchen Komponenten Änderungen vorzunehmen)
end;
So könntest Du
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat