回 帖 发 新 帖 刷新版面

主题:窗体间的控件如何调用??

在Form1中有Textbox1控件,事件的程序如下:

  Private Sub Form1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Click
        Dim f As New Form2
        f.Show()
    End Sub

在Form2中,有Label控件,事件的程序如下:

 Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim f As New Form1
        Label1.Text = f.TextBox1.Text
    End Sub


但是程序运行时,Form1中的Textbox1中即便有值,但是Form2中的Label1中并不显示Form1中的Textbox1中的值。为什么 ?


请指教!!

回复列表 (共5个回复)

沙发

怎么没有人回答我呢 ??


谢谢帮助!!!

板凳

你的代码不是相互引用,new就是生成了一个新实例,也就是A->B->C的调用关系。
你误认为A和C一样了。

有可能是以前使用VB6的习惯问题。要了解类的实例的相关信息。

3 楼

应该如何编程,才能实现这一编程思想-
  在form1中显示form2中Label的Text值,即在form1中的label1中显示form2中Label的Text值?


谢谢提供帮助!!

4 楼

本人对new的理解还不到位,比如
dim f as new form1
form1.show
这是什么意思??form1是已经存在的窗体,是生成的新实例吗??

谢谢帮助!!!

5 楼

你在模块中声明两个窗体实例
public frm1 as new form1
public frm2 as new form2
sub main()
   Aplication.run(frm1)
end sub

然后在把模块设成启动。。
然后就是可以用frm1后面的东东和frm2的东西些交换数据了。。

我来回复

您尚未登录,请登录后再回复。点此登录或注册