![]() |
AW: timer
Du hast kein Konsolenprojekt, deswegen kommt der Fehler bei Writeln.
|
AW: timer
hallo miteinander,
ich hab es jetzt herausgefunden, wie man einen timer erstellt .. und endlich auch die funktionsweise verstanden .. dank diesem code:
Code:
Anmerkung für Anfänger: Ihr müsst in den Eigenschaften der Form (links) folgende einstellungen vornehmen: OnCreate auf Create setzen und OnDestroy auf Destroy setzen.
unit Unit1;
interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Label1: TLabel; PROCEDURE ZaehleEinsHoch(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1 : TForm1; Timer1: TTimer; k : INTEGER; implementation {$R *.DFM} PROCEDURE TForm1.ZaehleEinsHoch(Sender: TObject); VAR s: STRING; begin Inc(k); Str(k,s); Label1.Font.Color := Random($FFFFFF); Label1.Caption := s end; procedure TForm1.FormCreate(Sender: TObject); begin (* Timer1 intantiieren *) Timer1 := TTimer.Create(Self); (* Eigenschaften von Timer1 festlegen *) (* (hier nur "Interval") *) Timer1.Interval := 500; (* Ereignisverknüpfung für Timer1 festlegen *) (* (hier nur "OnTimer") *) Timer1.OnTimer := ZaehleEinsHoch; end; procedure TForm1.FormDestroy(Sender: TObject); begin (* Timer1 lebewohl sagen *) Timer1.Destroy end; begin k := 0 end. damit dürfte dann das programm laufen ! nun zu meiner frage .. wie binde ich so einen timer in einen constructor ein ? und wie in einen destructor ? danke für die tipps ! |
AW: timer
:shock:
Anmerkung für Anfänger: Bei Quelltexten sollte eine angemessene Einrückung vorgenommen werden! Wer will das denn freiwillig anschauen? |
AW: timer
Delphi-Quellcode:
besser so ?
unit Unit1;
interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Label1: TLabel; PROCEDURE ZaehleEinsHoch(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1 : TForm1; Timer1: TTimer; k : INTEGER; implementation {$R *.DFM} PROCEDURE TForm1.ZaehleEinsHoch(Sender: TObject); VAR s: STRING; begin Inc(k); Str(k,s); Label1.Font.Color := Random($FFFFFF); Label1.Caption := s end; procedure TForm1.FormCreate(Sender: TObject); begin (* Timer1 intantiieren *) Timer1 := TTimer.Create(Self); (* Eigenschaften von Timer1 festlegen *) (* (hier nur "Interval") *) Timer1.Interval := 500; (* Ereignisverknüpfung für Timer1 festlegen *) (* (hier nur "OnTimer") *) Timer1.OnTimer := ZaehleEinsHoch; end; procedure TForm1.FormDestroy(Sender: TObject); begin (* Timer1 lebewohl sagen *) Timer1.Destroy end; begin k := 0 end. |
AW: timer
Zitat:
Wie, in Constructor und Destructor?:gruebel: Den Timer kann man auch auf das Formular ziehen und von dort alles tun. In einer Konsole kannst du nicht mit dem Timer arbeiten. Das System verschickt eine Botschaft für das Auslesen und eine Konsole kann keine Botschaft empfangen. (Wenn es doch geht, würde ich gerne wissen wie.) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz