• 主页
  • Windows SDK/API
  • 基础类
  • ActiveX
  • 数据库及相关技术
  • 网络及通讯开发
  • VCL组件使用和开发

如何在for循环的时候刷新界面显示?

RechardXc 2007-04-20 09:32:43
例如:
for(int i=0;i<100;i++)
{
Label1->Caption = String(i);
}
必须等循环结束后Label1上才显示数值,如何让Label在循环过程中就刷新显示呢?
...全文
153 点赞 收藏 7
写回复
7 条回复
CPO 2007年04月20日
借个地方啊,谁帮我看看这个,

还有lz把我的贴给按下去了,
挺着急的,不得已啊,见谅。
http://community.csdn.net/Expert/topic/5479/5479165.xml?temp=.8646662
回复 点赞
RechardXc 2007年04月20日
谢谢二位,ProcessMessages()符合要求,结帖
回复 点赞
CPO 2007年04月20日
没有重叠和延迟
回复 点赞
CPO 2007年04月20日
for(i=0;i<100;i++)
{
Label1->Caption = i;
Application->ProcessMessages();
Sleep(50);
}

这样好像就符合要求了吧
回复 点赞
constantine 2007年04月20日

for(int i=0;i<100;i++)
{
Label1->Caption = String(i);
Application->ProcessMessages();
}
回复 点赞
CPO 2007年04月20日
void __fastcall TForm1::Button1Click(TObject *Sender)
{
for(int i=0;i<100;i++)
{
Sleep(100);
Label1->Repaint();
Label1->Caption = i;
}
}
回复 点赞
CPO 2007年04月20日
你的问题中,能用Timer吗?
回复 点赞
发动态
发帖子
C++ Builder
创建于2007-08-02

2563

社区成员

10.2w+

社区内容

C++ Builder相关内容讨论区
社区公告
暂无公告