Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Prozedur zur Laufzeit zuweisen?


Stundenplan - Do 09.04.09 11:17
Titel: Prozedur zur Laufzeit zuweisen?
Hallo!

Ich will, dass mein zur Laufzeit erstellter Timer etwas im Ereignis von OnTimer hat.
Geht das überhaupt irgendwie?
Ich habs schon mit Timer1.OnTimer := TheProzedur; versucht, aber er gibt immer die Meldung aus:

Quelltext
1:
2:
 [Fehler] Unit1.pas(62): Inkompatible Typen: 'TNotifyEvent' und 'procedure, 
untyped pointer or untyped parameter'


Nersgatt - Do 09.04.09 11:26

Zeig mal den kompletten Quelltext, auch von der Prozedur, die dann ausgeführt werden soll.


thepaine91 - Do 09.04.09 11:26

So also man kann keinem notifyevent eine Prozedur zuweisen deshalb der Fehler.
Notivyevent wird ausgelöst und ist von vorne herein nicht dem man überhaupt etwas zuweisen könnte.

F1 hilft =)

Delphi Hilfe
***************************
Das Ereignis OnTimer tritt ein, wenn der in der Eigenschaft Interval festgelegte Zeitabschnitt verstrichen ist.

property OnTimer: TNotifyEvent;


Beschreibung

Mit dem Ereignis OnTimer können Sie eine Behandlungsroutine schreiben, die in bestimmten Zeitabschnitten eine Aktion ausführt.

Die Eigenschaft Interval des Zeitgebers legt fest, wie häufig das Ereignis OnTimer auftritt. Das Ereignis OnTimer tritt nach jedem Ablauf des festgelegten Zeitabschnitts ein.
****************************

edit: Ich muss mich korrigieren es ist möglich ;)

---Moderiert von user profile iconNarses: Beiträge zusammengefasst---

So hier wie es funktioniert (nicht getestet).


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
 

procedure TForm1.FormCreate(Sender: TObject);
begin
  Timer1.OnTimer := Test;
end;

procedure TForm1.Test(Sender: TObject);
begin
 showmessage(' Ich werde über Ontimer aufgerufe' );
end;


Hoffe das hilft dir weiter. :)

mfg nic


Stundenplan - Do 09.04.09 12:03

thepain91:
Danke! Der Quelltext funktioniert!