我现在delphi窗体中显示系统时间并能跟随系统时间进行更新,请问该如何实现呢,越简单越好了!谢谢了!

解决方案 »

  1.   

    Timer组件
    now是显示当前时间的函数
      

  2.   

    在DELPHI下读取与设置系统时钟很多朋友都想在自己的程序中显示系统时间这在DELPHI中十分容易利用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);beginEdit1.Text:='97/10/30 10:09:59'; //注意:控制面板内时间格式要为YY/MM/DDend;procedure TForm1.Button2Click(Sender:TObject);var   systemtime:Tsystemtime;DateTime:TDateTime;beginDateTime:=StrToDateTime(Edit1.text); //获得时间(TDateTime格式)DateTimeToSystemTime(DateTimesystemtime); //把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.GetSystemTimeAdjustmentSetSystemTimdAdjustment。
    //TSystemTime的格式PSystemTime = ^TSystemTime;TSystemTime = recordwYear: Word;wMonth: Word;wDayOfWeek: Word; //当前的系统时间是星期几wDay: Word;wHour: Word;wMinute: Word;wSecond: Word;wMilliseconds: Word;end;//TDateTime的格式TDateTime = type Double
      

  3.   

    窗体上放一个System->Timer控件 
    然后在OnTimer事件中加入你的代码
    如:procedure Tform1.Timer1Timer(Sender: TObject);
    begin
         Label1.Caption:=DateTimetostr((now()));
    end;