没有窗体的App(Console App)很容易做: 新建一个App, 把Form都删除, 关键是如
何控制程序的结束.
另外, TTimer是定时器, 不是计时器. 计时要通过GetTickCount函数来实现(或者是
取得系统时间):
设一个longint型的全局变量, 记录启动时的ClickCount, 在消息循环中调用
GetClickCount减去启动ClickCount除以1000既是秒数.
将duhe的代码修改后, 让程序运行10秒后退出:
var
Timer1:TMyTimer;
AMessage:TMsg;
BaseCount: LongInt;
begin
BaseCount:=GetTickCount;
Timer1:=TMyTimer.Create(nil);
Timer1.Interval:=1000;
Timer1.OnTimer:=Timer1.MsgBeep;
while GetMessage(AMessage, 0, 0, 0) do
begin
TranslateMessage(AMessage);
DispatchMessage(AMessage);
if (GetTickCount-BaseCount)>10000 then
break;
end;
end.