我用的MFC开发了一个应用程序,先创建了一个模态对话框dlg,
然后在响应某个按键后创建一个非模态对话框dlg1,dlg1对话框上有且仅有一个Shockwaveflash控件,问题是:
在创建对话框dlg1时,对话框先出来了,过一段时间Shockwaveflash控件才显示出来,原因可能是加载Shockwaveflash控件比较慢,
现在我想把对话框和Shockwaveflash控件同时显示出来,不会出现一先一后的问题
我想到一是使对话框透明,可是我在对话框初始化函数中加入如下代码:
COLORREF maskColor = RGB(255,255,255);
SetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE,GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000);
HINSTANCE hInst=LoadLibrary(_T("User32.DLL"));
if(hInst)
{
  typedef BOOL (WINAPI * MYFUNC)(HWND,COLORREF,BYTE,DWORD);
  MYFUNC fun=NULL;
  fun=(MYFUNC)GetProcAddress(hInst,"SetLayeredWindowAttributes");
  if(fun)fun(this->GetSafeHwnd(),maskColor,255,1);
   FreeLibrary(hInst);
}

对话框也没有变透明 ,不知道为什么,而且还不知道这种方法行不行?请高手指点另一种方法是能不能先加载完Shockwaveflash控件,再一创建对话框以至能同时显示出来,不知道怎么做还有一种想法是直接不显示对话框,只把Shockwaveflash控件显示出来就行了,也不知道如何做??在此求助各位高手,专家们指点指点,找出一种解决方案。谢谢!