我想知道是否有人可以帮助我。我对 Delphi 编程非常陌生,我有一个 10 天内到期的学校项目,说实话,我不知道我在做什么。
对我的期望是,我编写了一个记忆游戏,我目前陷入其中,我必须计算该人玩游戏需要多长时间,然后在最后显示他们花了多长时间作为“分数” .
我如何计时?我应该使用什么组件以及如何对该组件进行编程以计时?它应该在单击按钮时开始,然后在游戏结束时结束。
任何帮助将不胜感激!
为什么不在他开始游戏时将当前时间保存在变量中,并在他结束时再次保存时间?
您可以通过Now指示领取。
var time: TDateTime;
begin
time := now;
ShowMessage(DateTimeToStr(time));
end;
您将在系统中看到当前时间。
你会需要
1.- 在你的表格中,
Enabled
属性设置为 False
。startTime
,记录用户开始游戏的时间。应该会产生这样的结果...
type
TForm1 = class(TForm)
...
Label1: TLabel;
Timer1: TTimer;
...
private
startTime:TDateTime;
....
2.- 在开始按钮的单击事件中,初始化 startTime 属性并启动计时器的代码。
procedure TForm1.Button1Click(Sender: TObject);
begin
startTime:=Now;
Timer1.Enabled:=True;
....
end;
3.- 在定时器的定时器事件中,一些显示时间计数的代码
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Label1.Caption:=TimeToStr(Now-startTime);
....
end;
4.- 在完成按钮的点击事件中,或者当程序认为游戏结束时,一些代码来停止计时器。
procedure TForm1.Button2Click(Sender: TObject);
begin
Timer1.Enabled:=False;
Label1.Caption:=TimeToStr(now-startTime);
....
end;