我需要delphi-7的帮助

时间:2010-10-13 14:30:21

标签: delphi delphi-7

我想知道是否有人可以通过任何机会帮助我。我有一个学期项目在10天内到期,说实话我不知道我在做什么= /对我的期望是我编程记忆游戏。我目前卡住的地方是,我必须计算这个人玩游戏需要多长时间,然后显示他们最后花了多长时间作为“得分”。我怎么时间?我应该使用什么组件以及如何将此组件编程为时间?它应该在单击按钮时开始,然后在游戏结束时结束。任何帮助将受到高度赞赏!

4 个答案:

答案 0 :(得分:2)

为什么不在开始游戏时将当前时间保存在变量中,并再次节省他结束时的时间?

你可以通过现在指令来接受它。

var time: TDateTime;
begin
 time := now;
 ShowMessage(DateTimeToStr(time));
end;

您将看到系统中的当前时间。

答案 1 :(得分:2)

你需要

1.-在您的表格中,

  • 添加计时器,并将其Enabled属性设置为False
  • 添加标签以显示时间
  • 添加私人属性startTime以记录用户开始游戏的时间。

会产生这样的结果......

type
 TForm1 = class(TForm)
  ...
  Label1: TLabel;
  Timer1: TTimer;
  ...
 private
  startTime:TDateTime;
  ....

2.-在开始按钮的click事件中,初始化startTime属性并启动Timer的代码。

 procedure TForm1.Button1Click(Sender: TObject);
  begin
   startTime:=Now;
   Timer1.Enabled:=True;
   ....
  end;

3.-在Timer的Timer事件中,有一些代码用于显示计时

 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;  

答案 2 :(得分:0)

PA的回答似乎正是您所需要的。因为如果我理解得很好,这是你第一次使用delphi,我只会补充一点:

  • Now是在SysUtils中定义的函数,它返回当前日期& time

  • 您可以在系统组件调色板上找到TTimer(参见下面链接中的图片)

  • 通过选择“对象”检查器中的“事件”选项卡,然后双击输入框(参见下面链接中的图像),将自动生成编写代码的所有过程。

    < / LI>

http://i.stack.imgur.com/0iNsL.png(抱歉,无法内嵌图片,因为我还没有必要的声誉)

从这里可以很容易地完成你的应用程序

祝你好运, ģ

答案 3 :(得分:0)

  1. 在表单中创建一个TDateTime类型的变量(例如StartTime)。
  2. 当用户开始播放时,将变量设置为等于Now()。
  3. 当用户完成时,计算Now() - StartTime的值。结果是一个十进制数,表示在开始时间和结束时间之间经过的一天的分数。
  4. 要将其转换为秒数,请将其乘以(60 * 60 * 24)(这是一天中的秒数)。从那里你可以显示你想要的号码。