我想写个能获取当前系统时间
然后自动在当前时间上增加10分钟后
就showmessage ?大叔帮忙解答下。感激不禁

解决方案 »

  1.   

    uses
      DateUtils;procedure TForm1.Button1Click(Sender: TObject);
    var
      T: TDateTime;
    begin
      T := IncMinute(Now, 10);
      ShowMessage(FormatDateTime('yyyy-mm-dd hh:nn:ss.zzz',T));
    end;
      

  2.   

    我已经写出来了 可以得到当前时间了 
    date:=FormatDateTime('hh:mm:ss',Now);但是不知道怎么加 就是在hh.mm.ss的基础上加上5分钟,下面写个IF判断 是不是大于:HH。MM。SS + 5 ??如果是大于那么就SHOWMESSAGE
      

  3.   

    上面的谢谢,但是我想要的效果是增加了5分钟后才弹出SHOWMESSAGE的 显示加了5分钟后的时间的
      

  4.   

    问题好难理解啊,能否用点逗号还是什么的,看不来啊
    DT:= Now + strtodatetime('0:5:0'); 这个是加了五分钟之后的日期时间如果你的意思是想在5分钟后弹出个对话框,应该放个Timer控件,在System页里面还有别叫大叔,吓得大家都不敢回了
      

  5.   

    thistime := GetTickCount;
    while (GetTickCount - thistime < 600000) do
    begin
      Application.ProcessMessage;
      Sleep(1);
    end;
    ShowMessage('OK');
      

  6.   


    //定时器过程
    procedure TimerProc(Sender:TObject);
    begin
      if Not (Sender is TTimer ) Then Exit;//判断是不是定时器事件,如果不是则不理会
      TTimer(Sender).Enabled := false;//结束定时设置,以免重复发生
      try
        //Todo:
        ShowMessage('时间到!');   //定时器事件处理(任意合法代码)
      
      finally
        Sender.Free;//消毁定时器
      end;
    end;procedure TForm1.Button1Click(Sender: TObject); 
    var
      NewTimer:TTimer;
    begin 
      NewTimer:=TTimer.Create(Self);
      NewTimer.Enabled:=false;
      NewTimer.Interval:= 5(*分钟*)*60(*秒*)*1000(*毫秒*);
      NewTimer.Enabled:=True;
    end;
      

  7.   


    [code=Delphi(Pascal)]
    //定时器过程
    procedure TForm1.TimerProc(Sender:TObject);
    begin
      if Not (Sender is TTimer ) Then Exit;//判断是不是定时器事件,如果不是则不理会
      TTimer(Sender).Enabled := false;//结束定时设置,以免重复发生
      try
        //Todo:
        ShowMessage('时间到!');   //定时器事件处理(任意合法代码)
      
      finally
        Sender.Free;//消毁定时器
      end;
    end;procedure TForm1.Button1Click(Sender: TObject); 
    var
      NewTimer:TTimer;
    begin 
      NewTimer:=TTimer.Create(Self);
      NewTimer.Enabled:=false;
      NewTimer.Interval:= 5(*分钟*)*60(*秒*)*1000(*毫秒*);
      NewTimer.OnTimer:=TimerProc;
      NewTimer.Enabled:=True;
    end;[/code]
      

  8.   

    楼主程序可以做得更绚点。。就是像金山影霸 那种,到了点,就在系统状态栏冒泡提示信息,显示一定时间后自动关闭或者单击冒泡关闭。。
    看起来更cool,比窗口弹信息好
      

  9.   

    用Timer最简单了~~ 
    在窗口上放一下 Timer控件就可以了
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, ExtCtrls;type
      TForm1 = class(TForm)
        Timer1: TTimer;
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
        procedure FormCreate(Sender: TObject);
        procedure Timer1Timer(Sender: TObject);
      private
        T:TDateTime;
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    begin
      T:=Now;
      Timer1.Interval := 5000; //5 * 60 * 1000;
      Timer1.Enabled := True;
    end;procedure TForm1.FormCreate(Sender: TObject);
    begin
      Timer1.Enabled := False;
    end;procedure TForm1.Timer1Timer(Sender: TObject);
    begin
      ShowMessage(FormatDateTime('yyyy-mm-dd hh:nn:ss.zzz',T));
    end;end.
      

  10.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
          CurrTime:   TSystemTime;
          Sec:   Word;
    begin
    GetSystemTime(CurrTime);
          Sec   :=   CurrTime.wSecond   +   5;//秒
          while   Sec>CurrTime.wSecond   do
              GetSystemTime(CurrTime);
              showmessage('时间到啦');
    end;首先说明,这段代码是俺很久之前引一位大侠的,各位别丢东西过来,谢谢
    然后说明下
    这里是取系统时间 加5秒 然后是判断如果系统时间到了,再跳出来,显示 
    如果你希望这段时间系统干别的,那就需要线程或听大家的意见,用timer
    这里只是给你个方法,呵呵
    再声明下,我不是叔叔级别的,顶多是 哥哥
    没准是 弟弟