form之间如何实现参数的传递(10分)

  • 主题发起人 主题发起人 willyu
  • 开始时间 开始时间
W

willyu

Unregistered / Unconfirmed
GUEST, unregistred user!
全局变量如何使用啊,我有一个数组要在不同的form间传递值,该如何实现啊
望指教,谢谢
 
直接传指针吧
方便一点
速度还快
 
放在一个公共的单元中最好, 不然容易互相引用。 放在公共单元的var下。
 
新建一个unit,把数组定义在此,在要使用此数组的单元中uses此unit即可。
 
提示,如果会在线程用到的话,注意同步问题。
 
根据各位大侠的指点做了,但出了个怪现象,在一个form中给一个全局变量赋了值,但在另一个form中调用这个全局变量,得到的值永远为0,这是怎么回事啊
哪位大侠遇到过类似的问题啊,望指教
先谢了
 
搞不懂你,在一个form1里放一个caption,或edit
form1.edit1.text
引用不就可以了.
from1里变了,你怎么用都可以。这是菜的方法,其实其它变量也是一样的。
当然新建一个unit,把数组变量定义在此,在要使用此数组的单元中uses此unit即可,也就是公共单元。
 
如果在form1中想引用form2中变量a的值,要在form1的uses声明中引入form2的单元名如unit2.然后再引用:form1.caption:=unit2.a,这样应该差不多
 
willyu应当告知大家你把全局变量写在form的哪个位置。因为不同位置含义很不一样的。
gzin的方法,注意变量是定义在type Tform2之外的区域,才可这样用。否则应写作 form2.a
jamily的做法实际上是在Tform2下加入了一个全局可见的vcl对象,仅用来传递一个变量值,太浪费了。
 
我定义了一个Global的unit,然后其他form引用此Global,然后在form的onShow事件中给这个全局变量赋值,结果其他form中用showmessage(inttostr(a)),这个变量的值永远为0
这种情况如何解决
先谢了
 
汗,我觉得要么是你的程序和表述有出入。
干脆发程序给我吧 victorwoo(a)gmail.com
估计调两下就出来了
 
来自:willyu, 时间:2006-6-19 10:27:13, ID:3474846
我定义了一个Global的unit,然后其他form引用此Global,然后在form的onShow事件中给这个全局变量赋值,结果其他form中用showmessage(inttostr(a)),这个变量的值永远为0
这种情况如何解决
先谢了
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1.可能是你定义的变量位置不对,要定义在implementation 前面
2.可能是你在另外的form中,也定义了同名的变量, 在该同名变量作用域中掩盖了全局变量
 
多人接受答案了。
 
后退
顶部