首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

splash 窗体的使用,该如何处理

2012-05-24 
splash 窗体的使用void __fastcall TForm1::Button1Click(TObject *Sender){TForm2 *splash new TForm2(

splash 窗体的使用
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  TForm2 *splash = new TForm2(Application);

  splash->Show();
  splash->Update();

  splash->ShockwaveFlash1->Movie = "D:\\25.swf";

  splash->Update();

  Sleep(5000);////////////////////////////

  splash->Close();

}

程序在Sleep(5000);的部分有一段代码,时间较长,有5秒钟左右,所以就调用TForm2来完成中间等待过程,并播放一个Flash
但是,直到这个splash窗体关闭,这个falsh也没有播放,请大家帮我想想办法!谢谢了



[解决办法]
Sleep占用主线程。将
Sleep(5000);////////////////////////////
换成:

C/C++ code
DWORD dwTick = ::GetTickCount();while (::GetTickCount() - dwTick < 5000)    Application->ProcessMessages();
[解决办法]
这个5s的其它事如果和界面关系不大的话,可以考虑开辟独立的线程去做。
[解决办法]
得用线程技术呀

热点排行