我需要delphi-7的帮助

我需要delphi-7的帮助,delphi,delphi-7,Delphi,Delphi 7,我想知道是否有人能帮助我。我有一个学校项目10天后到期,老实说,我不知道我在做什么。我现在陷入的困境是,我必须计算一个人玩游戏需要多长时间,然后在游戏结束时显示他们花了多长时间作为“分数”。我该如何计算时间?我应该使用什么组件以及如何编程该组件以适应时间?它应该在点击按钮时开始,然后在游戏结束时结束。任何帮助都将不胜感激 为什么不在他开始游戏时将当前时间保存在变量中,然后在他结束时再次保存时间 您可以按照Now说明服用 var time: TDateTime; begin time := no

我想知道是否有人能帮助我。我有一个学校项目10天后到期,老实说,我不知道我在做什么。我现在陷入的困境是,我必须计算一个人玩游戏需要多长时间,然后在游戏结束时显示他们花了多长时间作为“分数”。我该如何计算时间?我应该使用什么组件以及如何编程该组件以适应时间?它应该在点击按钮时开始,然后在游戏结束时结束。任何帮助都将不胜感激

为什么不在他开始游戏时将当前时间保存在变量中,然后在他结束时再次保存时间

您可以按照Now说明服用

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

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

为什么不在他开始游戏时将当前时间保存在变量中,然后在他结束时再次保存时间

您可以按照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;  
你需要

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;  

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

  • Now
    是在SysUtils中定义的一个函数,返回当前日期和时间

  • 您将在系统组件托盘上找到TTimer(请参见下面链接中的图片)

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

(抱歉,无法内联图像,因为我还没有必要的声誉)

从现在开始,完成你的申请应该很容易

祝你好运,
爸爸的答案似乎正是你所需要的。因为如果我理解得很好,而且这是您第一次使用delphi,我只想补充一点:

  • Now
    是在SysUtils中定义的一个函数,返回当前日期和时间

  • 您将在系统组件托盘上找到TTimer(请参见下面链接中的图片)

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

(抱歉,无法内联图像,因为我还没有必要的声誉)

从现在开始,完成你的申请应该很容易

祝你好运, G

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

  • 在本例中,计时器是冗余的,增加了开销。每次计时器滴答作响时都会引发一个事件。在本例中,计时器是冗余的,会增加开销。每次计时器滴答作响时都会引发一个事件,等等。