2014-08-27 53 views
1

我刚刚开始使用Visual Basic .Net。从模块编辑按钮属性

我似乎无法确定button.text等按钮属性的范围。它们可以在button_click事件子外部使用吗?如果是这样,怎么样?

如何满足特定条件时如何从模块实时修改按钮属性?

如果可能,我一定会欣赏一些指导和示例。谢谢。

+0

这看起来不像是个好主意。我能问一个模块为什么需要这样做吗?你想达到什么目的? – Vland 2014-08-27 17:53:11

+0

只是出于普通的好奇心。如果无法将它们从模块中引用,我将在表单中将其分开。 – Jackdaw 2014-08-27 17:53:38

+0

是的,你可以改变模块,类或其他形式的属性。那里的代码需要对表单或控件有一个有效的引用。但它通常是一个糟糕的主意。 – Plutonix 2014-08-27 18:00:34

回答

0

正如快速出样,我不建议做这样的事情

我有2种形式开放,Form2Form3。每个表单上都有一个按钮。

我也有一个Module,叫MyModule的

Public Class Form2 

    Public Sub ChangeButtonText(ByVal s As String) 

     Button1.Text = s 

    End Sub 

End Class 

Public Module MyModule 

    Sub ChangeForm2Btn() 
     Form2.ChangeButtonText("LOL") 
    End Sub 

End Module 

从我Form3我按一下按钮,并调用模块功能改变Form2按钮的文本

Public Class Form3 

    Private Sub Form3_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load 
     Form2.Show() 
    End Sub 

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click 
     MyModule.ChangeForm2Btn() 
    End Sub 

End Class 
0

您可以将对按钮的引用传递给模块中的一个子,然后从窗体调用该子。

Public Class Form1 

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 

     ChangeButtonText(Me.Button1, "Changed") 

    End Sub 

End Class 

Module modButton 

    Public Sub ChangeButtonText(ByRef Button As Button, ByVal Text As String) 

     Button.Text = Text 

    End Sub 

End Module