VB窗口之间的数据怎么传递?

2024-12-18 14:14:17
推荐回答(5个)
回答1:

1、在模块文件(Module)中声明一个全局公共变量,然后在其他窗体中就可以通过这个变量来存取数据了,如:
在模块文件中声明变量a
Public a as string
在Form1中给a赋值
a="您好!"
在Form2中读取a
msgbox a

2、在要传递数据的那个窗口声明一个模块级的全局变量,然后在其他窗体中就可以通过这个变量(要加上窗体名的引用)来存取数据了,如:
在Form1中声明变量a及赋值
Public a As String
Private Sub Form_Load()
a = "你好!"
End Sub
在Form2中读取a
msgbox Form1.a

3、利用各个窗体中的控件属性来传递数据,如:
让Form2的Label1的显示内容和Form1的Label1一样
Form2.Label1.Caption = Form1.Label1.Caption

回答2:

在模块里面定义一个公共变量,如:
public tmp

在form1的按钮单击代码中写
Private Sub CommandButton1_Click()
tmp = Replace((Me.TextBox1.Value), " ", "")
Dim a(100)
n = 1
For i = 1 To Len(tmp)
a(n) = Val(Mid(tmp, i, 1))
n = n + 1
Next
For j = 1 To UBound(a)
kk = kk + a(j)
Next
tmp = kk
Unload Me
Form3.Show
End Sub
在form3中的代码中写入:

Private Sub UserForm_Initialize()
Me.TextBox1.Value = tmp
End Sub

即可传值.

回答3:

貌似能直接传递吧 只要是控件就行 比如你把 form1里面text控件的数据传递给form2 前提 form1里的text控件必须有数据 那就直接调用 在form2里调用方法为 form2.text1.text
提供程序
form1里写:
Private Sub Command1_Click()
Form2.Show
Unload Me
End Sub

Private Sub Form_Load()
Command1.Caption = "计算"
End Sub
form2里写:
Private Sub Command1_Click()
Form3.Show
Unload Me
End Sub

Private Sub Form_Load()
Command1.Caption = "开始计算"
End Sub
form3里写:
Private Sub Form_Load()
If Mid(Form2.Text1.Text, 2, 1) = "+" Then
Text1.Text = Int(Mid(Form2.Text1.Text, 1, 1)) + Int(Mid(Form2.Text1.Text, 3, 1))
End If
End Sub

回答4:

使用一个公共变量传递,或者做一个公共的函数。

回答5:

有几种方式呀。
全局变量、局部变量、文件等都能实现啊。