我不能在Delphi中重新绘制我的表单

时间:2012-01-16 14:31:06

标签: ios delphi delphi-xe2 firemonkey

我正在创建一个Delphi程序,我的程序中有这个代码:

begin
  if edit1.Text='salam' then
  begin
    for i := 1 to 10 do
    begin
      progressbar1.Value := progressbar1.Value+1;
      sleep(100);
    end;
  end;
end;

我想让进度条顺利移动。但是这段代码不是那样的。
我该怎么办?我想在睡觉后重新绘制表格。

1 个答案:

答案 0 :(得分:1)

你应该这样做......

begin
  if edit1.Text='salam' then
  begin
    progressbar1.Step:=1;
    for i := 1 to 10 do
    begin
      progressbar1.StepIt;
      Application.ProcessMessages;
      Sleep(100);
    end
  end;
end;

Windows需要处理要重新绘制的消息,并且知道您的应用程序没有被引导,Application.ProcessMessages就是这样做的。