Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Lazarus (IDE) (https://www.delphipraxis.net/81-lazarus-ide/)
-   -   Timer während Laufzeit erstellen.. (https://www.delphipraxis.net/192818-timer-waehrend-laufzeit-erstellen.html)

Bryan 22. Mai 2017 19:39

AW: Timer während Laufzeit erstellen..
 
Ich habe da was Interessantes gefunden tue mich aber ber der Umsetzung schwer :cry:
https://www.delphi-treff.de/object-p...ethodenzeiger/

SneakyBagels 22. Mai 2017 20:39

AW: Timer während Laufzeit erstellen..
 
Womit genau tust du dich schwer?

Bryan 22. Mai 2017 20:55

AW: Timer während Laufzeit erstellen..
 
Zitat:

Zitat von SneakyBagels (Beitrag 1372441)
Womit genau tust du dich schwer?

Ich habe das jetzt so gemacht wie im Beispiel es wird auch fehlerfrei kompiliert jedoch tut sich immernoch nichts...

Delphi-Quellcode:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,ExtCtrls;

type

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { private declarations }
  TimerEvent : procedure(Sender: TObject) of object;
  public
    { public declarations }
  end;

var
  Form1: TForm1;MyTimer:TTimer;

implementation

{$R *.lfm}

{ TForm1 }

procedure TimerEvent(Sender:TObject);
begin
Form1.caption:='erfolgreich';
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
MyTimer:=TTimer.Create(Form1);
MyTimer.Interval:=100;
MyTimer.OnTimer:=TimerEvent;
MyTimer.Enabled:=True;
end;


end.

Olli73 22. Mai 2017 21:08

AW: Timer während Laufzeit erstellen..
 
Delphi-Quellcode:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls, ExtCtrls;

type

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { private declarations }
    procedure TimerEvent(Sender: TObject);
  public
    { public declarations }
  end;

var
  Form1: TForm1;
  MyTimer: TTimer;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.TimerEvent(Sender:TObject);
begin
  Caption := 'erfolgreich';
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  MyTimer := TTimer.Create(self);
  MyTimer.Interval := 100;
  MyTimer.OnTimer := @TimerEvent;
  MyTimer.Enabled := True;
end;


end.

SneakyBagels 22. Mai 2017 21:09

AW: Timer während Laufzeit erstellen..
 
Mach mal wieder alles rückgängig und bleib bei normalen Variablen bis du alle Grundlagen verstanden hast.

Nimm Olli73's Lösung bis du alle Grundlagen verstanden hast.
Das ist nicht böse gemeint, sondern soll einfach nur eine Hilfe sein.

hoika 22. Mai 2017 21:39

AW: Timer während Laufzeit erstellen..
 
Hallo,
wenn ich nicht weiss, wie die Timer-Methode aussehen muss,
lege ich einen Timer aufs Form, Doppelklick drauf und
voila
Methode + notwendige Parameter sind da.

Timer von Form wieder löschen und Methode habe ich im Kopf.

himitsu 22. Mai 2017 22:21

AW: Timer während Laufzeit erstellen..
 
Zitat:

Zitat von Bryan (Beitrag 1372443)
Ich habe das jetzt so gemacht wie im Beispiel es wird auch fehlerfrei kompiliert jedoch tut sich immernoch nichts...

Delphi-Quellcode:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,ExtCtrls;

type

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { private declarations }
  TimerEvent : procedure(Sender: TObject) of object;
  public
    { public declarations }
  end;

var
  Form1: TForm1;MyTimer:TTimer;

implementation

{$R *.lfm}

{ TForm1 }

procedure TimerEvent(Sender:TObject);
begin
Form1.caption:='erfolgreich';
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
MyTimer:=TTimer.Create(Form1);
MyTimer.Interval:=100;
MyTimer.OnTimer:=TimerEvent;
MyTimer.Enabled:=True;
end;


end.

Ob nun selbstgemacht (
Delphi-Quellcode:
TimerEvent : procedure(Sender: TObject) of object;
) oder vordefiniert (
Delphi-Quellcode:
TimerEvent : TNotifyEvent;
), es kommt auf das Selbe raus und du hattest das doch schonmal, wo es auch schon nicht ging.

TimerEvent (das Feld/Variable) ist leer (nil) und somit wird auch "nichts" an OnTimer übergeben.

Bryan 22. Mai 2017 22:48

AW: Timer während Laufzeit erstellen..
 
Also ich weiß zwar nicht was ich mir da immer zusammengeschrieben habe jedoch dachte ich, dass ich Ollis Methode schon versucht hatte :-D Wie sich dann herausgestellt hat war das nicht der Fall:roll::wall:
Auf jeden Fall funktionierts jetzt wie es soll :dancer: :cheer: :party:

Vielen Dank an alle die geantwortet haben :thumb::thumb::thumb:

und für die, die es interessiert ich programmiere (bzw. versuche es) Bomberman und benutze die procedure für die Bomben :-D

SneakyBagels 22. Mai 2017 22:51

AW: Timer während Laufzeit erstellen..
 
Zitat:

Also ich weiß zwar nicht was ich mir da immer zusammengeschrieben habe jedoch dachte ich, dass ich Ollis Methode schon versucht hatte Wie sich dann herausgestellt hat war das nicht der Fall
Die Lösung habe ich zwar schon in Beitrag #4 geschrieben, aber seis drum :roll: :roll:


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:22 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz