今天碰到一个问题。
procedure TForm1.Timer1Timer(Sender: TObject);
var
  vStr:string;
  begin
      vStr:=formatdatetime('hh:mm:ss',time);
      label6.Caption:=vstr;
      timecount:=timecount+1;
      label5.Caption:=inttostr(timecount);
end;
 
在TForm1.FormCreate(Sender: TObject);
里头将timer1.enable:=true;之后就能正常显示。
但是在程序运行的过程中让timer1.enable:=true;后,显示的label6.caption显示出来的时间就是没有秒数。
只显示'hh:mm:‘这么一部分。不知道为什么会出现这个情况。
timer的间隔为1秒
请大侠指教!

解决方案 »

  1.   

    在代码里面加上Caption:= vstr; 看看窗体的标题是否也是一样少秒数,如果不是,你最好看看Label的autosize是否为真,把它设置成false;
      

  2.   

    在没有比我更负责的了,我复制了楼主的代码试验过没问题,看看Label5的autosize属性吧
      

  3.   

    额外说一个:
    'hh:mm:ss'最好写成 'hh:nn:ss'
    因为m其实是用来表示月份而不是分钟的
      

  4.   

    三楼的真的是很负责啊!应该是autosize属性!