c++builder中TForm2* form2=new TForm2(this);解决思路
c++builder中TForm2* form2=new TForm2(this);
在Form1中动态的打开Form2的程序如下:
TForm2* form2=new TForm2(this);
form2->ShowModal();
delete form2;
谁能解释下第一句呢,不太理解:)
通俗点最好,谢啦
------解决方案--------------------
TForm2 类名称
form2 是指针
new 新建类对象
this当前代码所在的Form的指针
------解决方案--------------------
TForm2* form2//声明一个TForm2类型得变量form2,后面new是实例化这个变量。
------解决方案--------------------
this是new出来的这个form的owner 不一定是代码所在form的指针
TForm2 *form = new TForm2(this);
TForm2 *form = new TForm2(Application);
------解决方案--------------------
除非你在Form2中有自己的定义
__fastcall TForm2(TComponent* Owner);
__fastcall TForm2(); //自己定义了一个
这个时候你可以不在new的时候指定owner
一般情况下最好还是指定一下, 这样写编译也会出错。
在Form1中动态的打开Form2的程序如下:
TForm2* form2=new TForm2(this);
form2->ShowModal();
delete form2;
谁能解释下第一句呢,不太理解:)
通俗点最好,谢啦
------解决方案--------------------
TForm2 类名称
form2 是指针
new 新建类对象
this当前代码所在的Form的指针
------解决方案--------------------
TForm2* form2//声明一个TForm2类型得变量form2,后面new是实例化这个变量。
------解决方案--------------------
this是new出来的这个form的owner 不一定是代码所在form的指针
TForm2 *form = new TForm2(this);
TForm2 *form = new TForm2(Application);
------解决方案--------------------
除非你在Form2中有自己的定义
__fastcall TForm2(TComponent* Owner);
__fastcall TForm2(); //自己定义了一个
这个时候你可以不在new的时候指定owner
一般情况下最好还是指定一下, 这样写编译也会出错。