2014-12-25 26 views
0

我在我的vb项目中有多个表单。 Form1是一个启动表单。有一个变量,它将整型值传递给Form2。我将Form3添加到项目中,并将其作为启动窗体。然后我从项目中删除它,并再次将Form1作为启动窗体。但是,从那时起,Form1上的变量不会将其整数值传递给Form2。我搞乱了我的项目。任何人都可以帮助吗?公开声明的变量不会将值传递给另一个表格

表格1

Public i as integer 
Private Sub btn_Click(sender As Object, e As EventArgs) Handles btn.Click 
    i = 1 
    dim nf as new form2 
    nf.showdialog(me) 
end sub 

在形式上2

Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
    msgbox(form1.i) 
end sub 

但MSGBOX打印值 '0'

+1

帮助你,而没有从_pass_ Form1的你的变量到窗体2的代码,它真的很难。 – Steve

+0

我没有通过变量我只是通过在form1中声明它的值将它的值传递给另一个表单 –

+0

从关闭的原因列表:寻求调试帮助的问题(“为什么不是这个代码工作?”)必须包含所需的行为,一个特定的问题或错误,以及在问题本身中重现问题所需的最短代码。没有明确问题陈述的问题对其他读者无益。请参阅:[如何创建最小,完整和可验证的示例](http://stackoverflow.com/help/mcve) – Steve

回答

0

OK的朋友感谢您的帮助。但是,我自己解决了它。

表格1

Private Sub btn_Click(sender As Object, e As EventArgs) Handles btn.Click 
     dim nf as new form2 
     nf.f2int = 1 
     nf.showdialog(me) 
    end sub 

在形式上2

Public Property f2int as Integer 
    Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
     msgbox(f2int) 
    end sub 
+0

这可能会做你想做的事,它不会使用你描述的过程。它继续暗示你不明白构造函数是如何运作的。在这个问题被删除之前,先向上看。 – jmoreno

+0

我的知识不如你的知识。这就是为什么我在这里,以便我可以从像你这样的知识渊博的人那里学到一些东西。 –

+0

这很好,但它看起来像你需要一个基本的教程开始。这超出了我们在这里所能做到的范围。 – jmoreno

相关问题