如何在几个不同的Form之间传递参数?

odie 2003-10-17 11:06:35
如何在几个不同的Form之间传递参数?
...全文
91 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
pzoon 2003-10-23
  • 打赏
  • 举报
回复
你可以使用记录类型呀
bubugao 2003-10-23
  • 打赏
  • 举报
回复
用构造函数
virtual __fastcall TForm1(TComponent* Owner,String *s)

在private 中定义
String *s1;
在构构造函数中
__fastcall TForm1(TComponent* Owner,String *s): 在这后面还有一句,你将原来的拷贝下来就行
{
s1=s; //

}
调用
String ss;
Form1=new TForm1(this,&ss);
Form1->Show();



yjy1001 2003-10-23
  • 打赏
  • 举报
回复
在其它的Form用extern声明就可以 了

还有 就是上楼的 肯定报错。1、没有TForm1类 只能写 TForm()
2、不能将Form创建在myQuery下
wh_cd 2003-10-23
  • 打赏
  • 举报
回复
回复人: Kabin() 加点冰 () ( ) 信誉:99 2003-10-17 11:24:00 得分:0


头文件 form的构造函数中
__fastcall TForm1(TComponent* Owner,TQuery *Q);

在new的时候传递参数
-------------------------------------------
我在构造是用的是

TForm1 *myform=new TForm1(myQuery);
myform->ShowModal();

myQuery 是我在调用的Form中的TQuery

但是报错:
“ Could not find a match for'TForm1::TForm1(TQuery)' ”

是不是
TForm1 *myform=new TForm1(myQuery);
这一句有问题啊?或者还有其它问题啊?
Kabin() 加点冰 ,再指点一下吧
Kabin 2003-10-17
  • 打赏
  • 举报
回复
哦,那还是用公共变量
odie 2003-10-17
  • 打赏
  • 举报
回复
我是想在程序的运行期间一直保持用户的权限
Kabin 2003-10-17
  • 打赏
  • 举报
回复
外部变量也可以,但一般不建议
sbean 2003-10-17
  • 打赏
  • 举报
回复
不知道你是要什么效果,最简单就是定义个全局变量,不过正确性不好保证
ljianq 2003-10-17
  • 打赏
  • 举报
回复
可以:
将Form1的头文件包括在Form2的CPP文件中,这样在Form2中,就可以使用Form1中的公有变量和方法,但要求Form1已经创建;

也可以使用消息、文件映射等;

mjer_pan 2003-10-17
  • 打赏
  • 举报
回复
在一个Form中定义外部变量,
然后在其它的Form用extern声明就可以调用这个变量了。
Kabin 2003-10-17
  • 打赏
  • 举报
回复
头文件 form的构造函数中
__fastcall TForm1(TComponent* Owner,int a,String b);

在new的时候传递参数

13,825

社区成员

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

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