form1上有一个label1,以下代码如果按VC的习惯,当单击label1时,label1应是先变为红,再停一秒钟,再变为蓝色.不过在Delphi中运行时它好像忽略了label1.color:=clred这句一样(运行时它停了一秒钟,然后变为蓝色. label1开头并没有变为红色)为什么啊?请各位解释下,好让我尽快溶入Delphi这个大家庭.
procedure TForm1.Label1Click(Sender: TObject);
begin
label1.color:=clred;
sleep(1000);
label1.color:=clblue;
end;

解决方案 »

  1.   

    label1.color:=clred;
      Label1.Refresh;
      sleep(1000);
      label1.color:=clblue;
      

  2.   

    ShowMessage('ok');
    label1.color:=clred;
    ShowMessage('ok');
    label1.color:=clblue;你这样试一下肯定能看到,呵呵
      

  3.   

    song song 2008 你好:
         我想你的问题是出在了没有刷新的问题上
    正确的做发是:
    procedure TForm1.Label1Click(Sender: TObject);
    begin
    label1.color:=clred;
    lable1.refresh;//此处是刷新的作用
    sleep(1000);
    label1.color:=clblue;
    end;
    你要是还有什么不懂的,欢迎来继续探讨好吗?