callbackform.pas

来自「source code for Marco Cantu s book Delph」· PAS 代码 · 共 51 行

PAS
51
字号
unit CallBackForm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TFormCallBack = class(TForm)
    ListBox1: TListBox;
    procedure FormCreate(Sender: TObject);
  private
    class var
      nTimerCount: Integer;
  public
    class procedure TimerCallBack (hwnd: THandle; uMsg, idEvent, dwTime: Cardinal); static; stdcall;
  end;

var
  FormCallBack: TFormCallBack;

implementation

{$R *.dfm}

const
  TIMERID = 100;

procedure TFormCallBack.FormCreate(Sender: TObject);
var
  callback: TFNTimerProc;
begin
  nTimerCount := 0;
  callback := TFNTimerProc(@TFormCallBack.TimerCallBack);
  SetTimer(Handle, TIMERID, 1000, callback);
end;

class procedure TFormCallBack.TimerCallBack(hwnd: THandle; uMsg, idEvent,
  dwTime: Cardinal);
begin
  try
    Inc (nTimerCount);
    FormCallBack.ListBox1.Items.Add (IntToStr (nTimerCount) + ' at ' + TimeToStr(Now));
  except on E: Exception do
    Application.HandleException(nil);
  end;
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?