在DELPHI中比如一个Lable 控件如何让他获得当前系统时间是否要添加一个Timer

解决方案 »

  1.   

    直接使用now就可以了,time也行,当然上面的API也行,它们有点区别,自己可以看看。
      

  2.   

    你的意思是实时显示当前时间?
    用一个1秒钟一次的timer
    在ontimer事件中
    label1.caption:=DatetimeToStr(Now());
      

  3.   

    Getsystemtime  系统时间
    Getlocaltime   当地时间Now Date Delphi 自带的时间但是随着系统变化
      

  4.   

    94,Now()就可以了。安全和简单。
      

  5.   

    statusbar1.Panels[0].Text:='日期:'+copy(DATETOSTR(date),0,4)+'年'+copy(DATETOSTR(date),6,2)+'月'+copy(DATETOSTR(date),9,2)+'日';
    statusbar1.Panels[1].Text:='时间:'+timeTOSTR(TIME);
      

  6.   

    如果想让LABEL仿时钟效果:
    在TIMER事件中写
        MainForm.StatusBar1.Panels[2].Text:=FormatDateTime('yyyy-mm-dd hh:mm:ss',Now);
      

  7.   

    本地时间 now()
    服务器时间  Sysdate
      

  8.   

    利用DateToStr(Date)及TimeToStr(Time)函数即可实现。 
    二者的函数原型如下:
      function DateToStr(Date:TDateTime):string;
      function TimeToStr(Time:TDateTime):string;
      其返回值均为String型。
    在程序中我们可以这样使用:
      Label1.Caption:=DateToStr(Date);
      Lable2.Caption:=TimeToStr(Time);
      二者分别调用了Delphi函数Date和Time读取系统日期和时间来实现的,但只能读系统时钟,而不能设置系统时钟。那么如何处理这一问题呢?这正是本文所要讨论的问题。
      既然Delphi没有提供如此功能,但Delphi提供了调用WindowsAPI的接口。所以我们可以调用WindowsAPI函数来实现这一功能。具体方法如下:
      procedure TForm1.Button1Click(Sender:TObject);
      begin
       Edit1.Text:='97/10/30 10:09:59'; //注意:控制面板内时间格式要为YY/MM/DD
      end;
      procedure TForm1.Button2Click(Sender:TObject);
      var   systemtime:Tsystemtime;
          DateTime:TDateTime;
      begin
      DateTime:=StrToDateTime(Edit1.text); //获得时间(TDateTime格式)
      DateTimeToSystemTime(DateTime,systemtime); //把Delphi的TDateTime格式转化为API的TSystemTime格式
      SetLocalTime(SystemTime); //设置系统时间
      GetLocalTime(SystemTime); //读取系统时间
      DateTime:=SystemTimeToDateTime(SystemTime); //把API的TSystemTime格式 转化为 Delphi的TDateTime格式
      Edit2.Text:=DateTimeToStr(DateTime); //显示当前系统的时间
      end;
      另外,还有好多其它的Delphi函数和API函数供我们使用,如:  StrToDate、StrToTime、DateTimeToStr、StrToDateTime、DateTimeToSystemTime、SystemTimeToDateTime、DateTimeToTimeStamp、TimeStampToDateTimeCompareFileTime、DosDateTimeToFileTime、FileTimeToDosDateTime、FileTimeToLocalFileTime、FileTimeToSystemTime、GetFileTime、SetFileTime、GetSystemTime(格林威治时间)、SetSystemTime.GetSystemTimeAdjustment,SetSystemTimdAdjustment。//TSystemTime的格式
    PSystemTime = ^TSystemTime;
    TSystemTime = record
     wYear: Word;
     wMonth: Word;
     wDayOfWeek: Word; //当前的系统时间是星期几
     wDay: Word;
     wHour: Word;
     wMinute: Word;
     wSecond: Word;
     wMilliseconds: Word;
    end;
    //TDateTime的格式
    TDateTime = type Double