pine222222 2016-12-26 05:50 采纳率: 0%
浏览 1670
已结题

VB.NET 无法调用另一个隐藏窗体中的按钮,希望能够解决这个问题。

创建两个窗体。第一个窗体上有四个按钮,可以显示或隐藏第二个窗体,可以调用第二个窗体上的按钮。第二个窗体上有一个按钮,按钮的功能是产生一个信息框。当第二个窗体显示时,第一个窗体的按钮可以成功调用第二个窗体上的按钮,产生一个信息框。当第二个窗体隐藏时,就无法功调用第二个窗体上的按钮。
这是一个简化的例子,实际上,被调用的第二个窗体上的按钮还要去调用其他的控件。
现在正在使用的凑合的办法是把第二个窗体放在正在显示的第一个窗体后面去遮蔽起来。需要的时候把第二个窗体放到前面来。
对可见的按钮,不可见的按钮的调用也是一样。现在正在使用的凑合的办法是把按钮放在一个标签(label)后面去遮蔽起来。需要的时候把按钮放在标签(label)前面来。

窗体1的代码。
Friend Class Form1
Inherits System.Windows.Forms.Form
Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command1.Click
'隐藏窗体,使窗体按钮不可见。
Form2.Hide()
Me.Button4.Visible = False
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    '显示窗体,使窗体按钮可见。
    Form2.Location = New Point(200, 300)
    Form2.Show()
    Form2.Command2.Visible = True

    Me.Button4.Visible = True

End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    '按钮的功能
    MsgBox("窗体按钮----")
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    '调用窗体的按钮
    Form2.Command2.PerformClick()

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    '调用窗体的按钮
    Me.Button4.PerformClick()

End Sub

End Class
窗体2的代码。
Friend Class Form2
Inherits System.Windows.Forms.Form
Private Sub Command2_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command2.Click
'窗体按钮的功能。
MsgBox("窗体按钮")
End Sub
End Class

  • 写回答

2条回答 默认 最新

  • Tiger_Zhao 2016-12-26 08:50
    关注
    Public Class Form2
    
        '暴露出事件'
        Public Sub Command2_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command2.Click
            MsgBox("窗体按钮")
        End Sub
    
    End Class
    
    Public Class Form1
    
        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
            '直接调用事件'
            Form2.Command2_Click(sender, e)
    
            Me.Button4.Visible = True
        End Sub
    
    End Class
    
    评论

报告相同问题?

悬赏问题

  • ¥20 怎么在stm32门禁成品上增加记录功能
  • ¥15 Source insight编写代码后使用CCS5.2版本import之后,代码跳到注释行里面
  • ¥50 NT4.0系统 STOP:0X0000007B
  • ¥15 想问一下stata17中这段代码哪里有问题呀
  • ¥15 flink cdc无法实时同步mysql数据
  • ¥100 有人会搭建GPT-J-6B框架吗?有偿
  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 解riccati方程组