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

做系统启动界面时出有关问题,——初学者提问

2012-02-16 
做系统启动界面时出问题,求救!!——菜鸟提问。我做了一个名为StartupForm的窗体作为系统的启动窗体。完了在Pro

做系统启动界面时出问题,求救!!——菜鸟提问。
我做了一个名为StartupForm的窗体作为系统的启动窗体。完了在Project->View Source里面将WinMain()函数修改成如下代码:
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
  try
  {
  Application->Initialize();
  Application->CreateForm(__classid(TForm1), &Form1);
  Application->CreateForm(__classid(TDataMod), &DataMod);
  Application->CreateForm(__classid(TSearchDlg), &SearchDlg);
  Application->CreateForm(__classid(TFilterDlg), &FilterDlg);
  Application->CreateForm(__classid(TGridView), &GridView);
  Application->CreateForm(__classid(TQuickAddress), &QuickAddress);
  Application->CreateForm(__classid(TQuickPhone), &QuickPhone);
  Application->CreateForm(__classid(TQuickAll), &QuickAll);
  Application->CreateForm(__classid(TPrintGroup), &PrintGroup);
  Application->CreateForm(__classid(TStartupForm), &StartupForm);
  TStartupForm* StartupForm=new TStartupForm(NULL);
  StartupForm->ShowModal() ;
  delete StartupForm;
  Application->Run();
  }
  catch (Exception &exception)
  {
  Application->ShowException(&exception);
  }
  catch (...)
  {
  try
  {
  throw Exception("");
  }
  catch (Exception &exception)
  {
  Application->ShowException(&exception);
  }
  }
  return 0;
}


编译后出错,提示如下:
[C++ Error] Project1.cpp(33): E2450 Undefined structure 'TStartupForm'
[C++ Error] Project1.cpp(33): E2034 Cannot convert 'int' to 'TStartupForm'
[C++ Error] Project1.cpp(34): E2315 'ShowModal' is not a member of 'TStartupForm', because the type is not yet defined
[C++ Error] Project1.cpp(50): E2451 Undefined symbol 'exception'
请教高手,如何解决??

[解决办法]
把StartupForm所在的单元头文件包含一下,例如:

#include "UnitXXX.h"

但是话又说回来了,这一行代码已经创建了StartupForm窗体:
Application->CreateForm(__classid(TStartupForm), &StartupForm); 

后面为什么还要new一个窗体再ShowModal呢?

热点排行