Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi luckies konsole timer -> erbitte hilfe (https://www.delphipraxis.net/63152-luckies-konsole-timer-erbitte-hilfe.html)

agm65 14. Feb 2006 16:53


luckies konsole timer -> erbitte hilfe
 
hi leute, also ich wollte mit luckies konsole timer arbeiten...nur ich verstehe den nicht...
Delphi-Quellcode:
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  ExtCtrls,
  Classes;

type
  PMethodPointer = ^TMethodPointer;
  TMethodPointer = packed record
    pMethod: Pointer;
    pObject: TObject;
  end;

var
  T           : TTimer;
  p           : TMethodPointer;
  i           : Integer;

procedure NotifyEvent(Self: TMethodPointer; Sender: TObject);
begin
  writeln('yes');
  beep;
end;

begin
  T := TTimer.Create(nil);
  T.Interval := 200; // -> löst alle 200 ms das OnTimer-Event aus
  try
    p.pMethod := @NotifyEvent;
    p.pObject := nil;
    T.OnTimer := TNotifyEvent(p);

    T.Enabled := true; // aktiviert den Timer
    writeln('Warte auf Event: ');
    for i := 1 to 5 do
    begin
      sleep(500);
      writeln('warte ' + inttostr(i * 500) + 'ms...');
      NotifyEvent(p, T);
    end;
    T.Enabled := false; // deaktiviert den Timer
  finally
    T.Free;
  end;
end.
wenn ich jetzt nur das nutze, komme ich zum gleichen ergebniss...

Delphi-Quellcode:
    for i := 1 to 5 do
    begin
      sleep(500);
      writeln('warte ' + inttostr(i * 500) + 'ms...');
      NotifyEvent(p, T);
    end;

und das interval richtet sich insgesamt nach dem sleep und nicht nach dem timer interval was mache ich falsch ? bzw wie funktioniert der timer denn auch ohne die schleife ? danke für hilfe


okay....ne andere frage gibt es auch ne möglichkeit ohne diese uses die meine file auf 250kb hochschrauben ?

Olli 14. Mai 2006 14:21

Re: luckies konsole timer -> erbitte hilfe
 
MSDN-Library durchsuchenSetTimer mit einfacher Callback-Funktion verwenden - schwuppdi biste von den 250k wieder runter.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:49 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