300分求解决方案:怎样动态添加窗体到项目中?(BCB)(200分)

  • 主题发起人 主题发起人 浪边人
  • 开始时间 开始时间

浪边人

Unregistered / Unconfirmed
GUEST, unregistred user!
在Project1.cpp中:
#include <vcl.h>
#pragma hdrstop
USERES("Project1.res");
USEFORM("Unit1.cpp", Form1);
#define aaa
#ifdef aaa
USEFORM("Unit2.cpp", Form2);
#else

USEFORM("Unit3.cpp", Form3);
#endif
程序想实现根据需要用条件编译的方式来动态增加窗体到项目中.以上代码实际运行时只会将Unit1单元添加到项目中.是否在项目的USEFORM块中不能出现条件编译语句?
问题由来:一个项目要面对不同的客户群,我又只想用一个版本来控制.有的客户可能只要项目中的很少一部分功能,如果将窗体全部添加到项目中,程序太大了.
另外100分:http://www.delphibbs.com/delphibbs/dispq.asp?LID=2354038
 
对不起,没空研究编译选项,但可以给你提供一个肯定能解决你问题的方法:
1、打开你的bpr,你会看到第7行及第12行,一个控制obj,一个控制dfm。
2、打开工程的cpp,有你说的useform.
自己编个程序,把form全列上,凡是选择的form,可以用你的程序修改上述两个文件。ok?
更进一步的可以把选择结果存入数据库或文件,随时可用。
 
TO 李衍智:
问题已解决,思路同你所说.祝BCB专栏在你的悉心管理和热情呵护下越来越热闹!
另:请到http://www.delphibbs.com/delphibbs/dispq.asp?lid=2354038收分.
 
后退
顶部