读书人

建立变量窗体(C++)解决方案

发布时间: 2012-03-16 16:34:56 作者: rapoo

建立变量窗体(C++)
我想实现给frmname赋不同的值,调用不同的已经写好的窗体:

Form_jcdata = new TForm_jcdata(this);//这个窗体是早就写好的了


String frmname = "Form_jcdata";
TForm *pForm;
if ((TForm *)FindComponent(frmname))
{
((TForm *)FindComponent(frmname))->ShowModal();

ss = ((TForm *)FindComponent(frmname))->Caption;
ShowMessage(ss);
ss = ((TForm *)FindComponent(frmname))->Name;
ShowMessage(ss);
}
else
{
pForm = new ((TForm *)FindComponent(frmname))(this);//这行有问题,
pForm ->ShowModal();

}
请问如何才能实现

[解决办法]
pForm = new ((TForm *)FindComponent(frmname))(this);//这行有问题,
改成:
Application->CreateForm(__classid(FindComponent(frmname)), &pForm);
[解决办法]
pForm = new ((TForm *)FindComponent(frmname))(this);//这行有问题,

当然有问题,findcomponent是实例,还 new !

读书人网 >C++ Builder

热点推荐