首先纠正一个问题窗体是form不是frame然后开始回答问题,如楼上所说,建立一个模块,然后里面放个全局变量是最简单的了。但是楼主之后补充说不能这样干,汗~~~那好吧,我们换个方法,比如你form1里面有个变量a=5要传递到form2里面,你可以在form2的最顶端加入如下定义: public b as long 然后在form1里面这样写: form2.b=aOK天下太平了,这下楼主满足了吧!
1、用窗体级全局变量实现:'form1 code Option Explicit Public a As Integer Private Sub Form_Load() a = 5 Form2.Show End Sub'form2 code Option Explicit Private Sub Command1_Click() MsgBox Form1.a End Sub2、利用控件tag属性实现'form1 code Private Sub Form_Load() Frame1.Tag = 5 Form2.Show
End Sub'form2 code Private Sub Command1_Click() Frame2.Tag = Form1.Frame1.Tag MsgBox Frame2.Tag
End Sub
要不就全局变量 要不就引用比如:form1中有变量s 要应用到form5,先在form5中加个变量,再赋值。 例:在form5中 dim xinzhi as string xinzhi=form1.s text5.text=form1.s
public b as long
然后在form1里面这样写:
form2.b=aOK天下太平了,这下楼主满足了吧!
Option Explicit
Public a As Integer
Private Sub Form_Load()
a = 5
Form2.Show
End Sub'form2 code
Option Explicit
Private Sub Command1_Click()
MsgBox Form1.a
End Sub2、利用控件tag属性实现'form1 code
Private Sub Form_Load()
Frame1.Tag = 5
Form2.Show
End Sub'form2 code
Private Sub Command1_Click()
Frame2.Tag = Form1.Frame1.Tag
MsgBox Frame2.Tag
End Sub
要不就引用比如:form1中有变量s 要应用到form5,先在form5中加个变量,再赋值。
例:在form5中
dim xinzhi as string
xinzhi=form1.s
text5.text=form1.s
form1中定义一个public变量AAA,然后在form2中就可以用form1.AAA的方法去访问了.
不过为何楼主不原意在模块里直接定义全局变量呢??
form1.a = 123
x = form2.a ' x 值为 123 ,form2.a 与 form1.a 自动同步了
在form2中引用form.a