调用动态创建的窗口的问题(50分)

  • 主题发起人 主题发起人 yyd
  • 开始时间 开始时间
Y

yyd

Unregistered / Unconfirmed
GUEST, unregistred user!
void _fastcall TForm1::Button1Click(TObject *Sender)
{
Tform2 *Forms;
try
{
Form2=new TForm2(Application);//动态创建Form2
Form2->ShowModal();
delete Form2;//把Form2释放
}
catch(Exception &exception)
{
delete Form2;
Application->ShowException(&exception);
}
}
这是一个动态创建窗体的过程,现在我想把它写成一个函数,以便使用,请问大虾们怎么写,我试过一些方式,但是不成功。请大虾给指导一二。
 
呵呵,这个写成函数似乎没什么意义...
楼主的目的是不是想要多个控件(比如Button1、Button2、Button3、...、ButtonN)都要使用这一过程呢?
那么可以这样写:
void _fastcall TForm1::CommonButtonClick(TObject *Sender)
{
Tform2 *Forms;
try
{
Form2=new TForm2(Application);//动态创建Form2
Form2->ShowModal();
delete Form2;//把Form2释放
}
catch(Exception &exception)
{
delete Form2;
Application->ShowException(&exception);
}
}
然后把CommonButtonClick指针赋值给:Button1、...、ButtonN的OnClick事件就可以了。
 
我要在主窗体上调用很多的窗体,所以想写一个这样的函数,你为什么说没有意义呢??
能给解释一下么??
 
对啊!你调用窗口肯定要通过特定的事件,那可写成我上面的形式,然后把它的指针去付给那些需要调用它的事件就可以了(不过,其实我这样写也可以说是写成了通用“函数”的形式)...
 
我是想创建不同的窗体,可是你的代码就是一个Form2一个窗体,怎么可以编写一个函数来实现?偶是菜鸟,能说得详细点吗?主要是参数的设置我不知道怎么设??
 
我是已经建立了好多的窗体的,领导说让换成动态生成的,我就改,每个窗体已经有了命名了。就想通过这个函数把已经创建的窗体显示出来。我把主窗体设置为fsMDIForm,别的需要调用的窗体设置为fsMDIChild。
 
后退
顶部