有关窗体继承的简单问题 变量会自动消失???(50分)

  • 主题发起人 主题发起人 superFans
  • 开始时间 开始时间
S

superFans

Unregistered / Unconfirmed
GUEST, unregistred user!
C++ Builder 新手的问题
我在BCB5 定义了两个窗体 Form1和Form2
Form2 继承于Form1
class TForm2 : public TForm1
Form1 中定义有变量
public
String MyString;
事件
void __fastcall TForm1::FormClick(TObject *Sender)
{
this->Caption =this->MyString ;
}
Form2中有事件
void __fastcall TForm2::FormCreate(TObject *Sender)
{
this->MyString ="aaa";

}
但运行时点击窗体时 Caption 却为空,请问是什么原因?
如何处理才能达到标题显示"aaa" ? 是我的盗版的原因吗
相似的代码在Delphi中正常.
 
你说清楚一点,你是运行哪个窗体.
而且继承是会使子类和父类有相同的成员,但是他们并不是同一个成员,你在FORM2中将mystring改变怎么可能使父类的改变呢!
你应该好好看看面对对象的书籍!
因为在初始化的时候,MyString 被置为空所以你的结果是空的
 
运行的是Form2,在Form2 上点鼠标应该可以改变标题。
--在Delphi中同样的设计,却可以.
--
 
不太清楚
学习
 
多人接受答案了。
 
后退
顶部