首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

BCB Form之间数据传递的有关问题

2012-02-14 
BCB Form之间数据传递的问题!我做了一个登录页面(Form2)和一个主页面(Form1)。当我登录以后得让Form1知道是

BCB Form之间数据传递的问题!
我做了一个登录页面(Form2)和一个主页面(Form1)。当我登录以后得让Form1知道是谁登录了,并显示其相应的数据。现在问题来了。
登录以后,添加数据,OK没有问题,是以用户名的身份添加的,并且能够显示出来。
但是关掉以后,重新登陆进去,结果什么数据都没有,但是数据库里面也是有数据的。
通过测试表明是应该在查询的时候没有能把用户名传递过来,用户名为空。所以查询不到。以下是代码

C/C++ code
void TForm1::ReShow(){ TreeView1->Items->Clear(); DataModule3->ADOQuery1->Active=false; DataModule3->ADOQuery1->SQL->Clear(); DataModule3->ADOQuery1->SQL->Add("Select * from WebSite where UserName='"+Form2->UName+"'"); DataModule3->ADOQuery1->Open(); while(!DataModule3->ADOQuery1->Eof) {TreeView1->Items->Add(NULL,DataModule3->ADOQuery1->FieldByName("Title")->AsString); DataModule3->ADOQuery1->Next(); } DataModule3->ADOQuery1->Close();}

问题现在是为什么在FormCreate中Form2->UName这个没有值,但是在其他事件里面却有值?
UName是我在Form2也就是登录页面中设置成的public,AnsiString类型的。

[解决办法]
Form1中 #include Form2.h
[解决办法]
在Form2中给UName赋值了没?调试一下,看看UName的值的变化。
[解决办法]
检查Insert_website,参数传递够了没有?
[解决办法]
FormCreate事件发生的时候控件还没有生成...

热点排行