还是窗体问题,怎么也弄不明白

guess1975 2003-09-02 06:30:26
Form2 Form3 两个窗体,
Form2是MDIChild 设为Available form
Form3是fsNomal 设为Available form Auto_create forms
在Form2窗体的button2控件上写:Form3->ShowModal();
在Form3窗体的button3控件上写:Form2->Edit1->Text=Form3->Edit1->Text;
然后编译运行,程序出现Form1窗体,点击button1 出现Form2窗体
点击在Form2窗上体的button2控件,出现Form3窗体,可是点击在Form3窗上体的button3控件时出现了错误信息,并不能“Form2->Edit1->Text=Form3->Edit1->Text”这是怎么会事 如何才能“Form2->Edit1->Text=Form3->Edit1->Text”
注:Form1窗体是主窗体,窗体的button1是这样写的:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TForm2 * NewChildForm;
NewChildForm=new TForm2(Application);
}
...全文
30 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
nightfallrove 2003-09-02
  • 打赏
  • 举报
回复
上面找错一点了,,不好意思
不是没有include的原因,可能是因为窗体名重复了,,
在设计form2,form3时就会有两个全局变量form2,form3在调用 //删掉数字,,,,
Form2->Edit1->Text=Form3->Edit1->Text”时因为Form2
是指那个全局的form2,也就是一个没有分配的Form2当然就会出错,
楼主既然写了:
//下同。。
呵呵,,
nightfallrove 2003-09-02
  • 打赏
  • 举报
回复
不是没有include的原因,可能是因为窗体名重复了,,
在设计form2,form3时就会有两个全局变量form2,form3
一个是全局的一个是局部的,所以在调用
Form2->Edit1->Text=Form3->Edit1->Text”时因为Form2
是指那个全局的form2,也就是一个没有分配的Form2当然就会出错,
楼主既然写了:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TForm2 * NewChildForm;
NewChildForm=new TForm2(Application);
}
为什么还要用
Form2->Edit1->Text=Form3->Edit1->Text”呢?
应该用
“NewChildForm->Edit1->Text=Form3->Edit1->Text”
这时NewChildForm应该也是全局的,
要不就应该把
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TForm2 * NewChildForm;
NewChildForm=new TForm2(Application);
}
改为
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Form2=new TForm2(Application);
}
这样应该就不会出问题了,
当然对于FORM3的处理也是要注意窗体名不能冲突,
楼主自已多理解,在对CB的程序结构不是很清楚的情况下
最好不要按自己的想法去编制一些比较”混乱“的程序,
有些东西只能是自己体会,别人讲也难得讲清,
呵呵,,
小弟的一点愚见,希望抛砖引玉了,,

GeoPhoenix 2003-09-02
  • 打赏
  • 举报
回复
不应该是楼上说的原因,如果是那个原因,编译就通不过,还是没得到form2指针,这个问题才是关键
linjl 2003-09-02
  • 打赏
  • 举报
回复
呵呵,你应该没有在 unit3 的代码中包含 unit2.h 吧,你不包含它, Form3 就不会知道在
From2 中有 Edit1 这么一个控件存在,自然你在 From3 中调用 Edit1 就会出错啦。
在 unit3.cpp 中加上 #include<unit2.h> 就没事了.
CompositeBowMan 2003-09-02
  • 打赏
  • 举报
回复
unit 3是否include了unit2,否则怎么访问Form2

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧