如何使用Visual Basic(正确)将Form1.TextBox1.Text传递给Form2.TextBox2.Text?

时间:2014-02-25 16:23:01

标签: vba variables transfer

这是两年前在这个帖子中提出的问题的延续: VB6 equivalent of string.IsNullOrEmpty (我想。)程序员建议我使用String.IsNullorEmpty方法,我使用这个线程转换为Visual Basic,但我仍然无法使它工作。

我的问题的具体细节在这里,包括所有当前的代码: http://www.daniweb.com/software-development/visual-basic-4-5-6/threads/473930/passing-data-between-forms-in-vba

以下是它的要点,直接从第二个链接复制: 所以我试图在Form1上的TextBox1.Text和Form 2上的TextBox2.Text之间建立一个链接。我目前拥有的是我的TextBox2_Change代码下面的一行代码: TextBox2 = Form1.TextBox1.Text

这个ALMOST做我想做的事。唯一的问题是,当Form2在显示之前弹出时,它要求我在TextBox2中输入任何字符。

我正在努力解决这个问题,然后我最终会尝试将其删除部分文件名,直到项目文件名显示.......但这是一个整体不同的游戏我会玩。一步一步。

有人有任何建议吗?

3 个答案:

答案 0 :(得分:1)

解释

您应该在Form2_Load事件下编写代码。

如果您在Textbox2_TextChanged事件下编写代码,则只有在Textbox2中键入或删除某些内容时才会执行代码(这与正在更改的文本相同)。

代码和示例

Private Sub Form2_Load () Handles Mybase.Load
        Textbox2.Text = Form1.Textbox1.Text
End Sub

希望它完美无缺!

答案 1 :(得分:0)

您观察到的行为是正常的:您的TextBox2仅更新(使用TextBox1中的值)...当您手动更新它时( _Change )。

答案 2 :(得分:-1)

嘿,朋友很简单。你不需要添加任何其他函数只需使用点(。)运算符来访问Form1的所有组件。 例如。: Form1.TextBox1.AppendText("hello")

或者您可以从Form2读取值并将其插入Form1。 例如:

Dim txt As String=TextBox1.Text
Form1.TextBox1.AppendText(txt)