我有一个2格式。 Form1打开Form2。单击一个值后,Form 2将该值发送到位于Form 1中的文本框。它是硬编码的,所以Form2内部明确声明Form1.txtbox.Text = "Whatever i clicked"
Form2然后关闭,我现在坐在Form1上,但是txtbox.text没有从Form2接收到新值。将vb6格式设置为硬编码格式的实例
在即时窗口Form1.txtbox.text = "Whatever I clicked"
是正常的,但是在Form1的上下文中的txtbox.text = ""
是空的。
我打开Form1使用Forms.Add("Form1")
现在有无论如何设置此实例的表格到硬编码实例吗?我想象错误的发生是因为Forms.Add("Form1")
创建了该表单的一个实例,而Form1.show
是实际的表单。无论如何要将这两个匹配成同一个对象?
我会建议Form1以模态方式打开Form2 - > Form2隐藏自己当您单击关闭时,然后Form1从Form2中获取值。最后,Form1卸载Form2。 – jac
是的Form1确实在模态中打开,但我认为它是因为我首先打开form1。 '设置ftemp = Forms.Add(“Form1)ftemp.show'与后面的'Form1.Show'相比,我可以明确地调用表单中的对象,它会改变,但前者不允许我做 – Byrd
当你创建Form1时,你创建了两个东西:一个叫做Form1的类,你可以创建一个名为Form1的实例和一个预先声明的全局实例,你可以做一些类似于“Set Form1 = New Form1”的东西,但会变得有点愚蠢,或者也许更笨重的'Set Form1 = Forms.Add(“Form1”)'这是大约相同的事情。 – Bob77