在VB.NET / VS2008中定义“全局变量”

时间:2013-07-17 02:07:23

标签: vb.net visual-studio-2008

我正在使用“GetPrivateProfileString”成功读取.ini文件。我发现自己不得不在多个程序中重新使用各种变量,例如表单加载和其他各种点击事件。

我想简单地使用我的代码,这样我就不必多次声明相同的变量了。我尝试将代码移动到Class以获得更多的全局访问,而无需多次重新定义变量。我的代码片段如下,我对如何实现这一点的任何见解都将不胜感激。

Dim MJBLoaderIni as String
MJBLoaderIni = tbBaseMMInstall.Text & "\MJBLoader\MJBLoader.ini"
Dim ConfigDisplayCustomerNumber As String
Dim DisplayCNumber As String
DisplayCNumber = Space(1)

ConfigDisplayCustomerNumber = ApplicationLog.GetPrivateProfileString("MJBLOADER", "DISPLAYCUSTOMERNUMBER", "$", DisplayCNumber, 255, MJBLoaderIni)

2 个答案:

答案 0 :(得分:1)

尝试使用“公开”变量类型并在模块级别声明它..像这样

您可以将其设为 Mymodule.vb

Public MJBLoaderIni as String

因此,您的MJBLoaderIni会在同一项目的所有应用中识别

Form1 中的示例..

Class Form1
  MJBLoaderIni = tbBaseMMInstall.Text & "\MJBLoader\MJBLoader.ini"
  Dim ConfigDisplayCustomerNumber As String
  Dim DisplayCNumber As String

  Private Sub Form_Load( .. ) handles Form.Load
    DisplayCNumber = Space(1)
    ConfigDisplayCustomerNumber = ApplicationLog.GetPrivateProfileString("MJBLOADER",   "DISPLAYCUSTOMERNUMBER", "$", DisplayCNumber, 255, MJBLoaderIni)
  End Sub
End Class

Form2 ..

Class Form2
  Private Sub Button1_Click( .. ) handles Button1.Click

    Msgbox(MJBLoaderIni)  '------> this will show your MJBLoaderIni

  End Sub
End Class

答案 1 :(得分:0)

我创建了一个Global Variables类,我在其中创建了应用程序所需的全局变量,然后在表单上填充了我需要的值。