我有一个需要用户身份验证的程序。现在我将登录名存储在公共字符串中,但我想使用有关用户的更多信息,例如他选择使用的语言,他的名字和类似的东西。我可以创建另一个公共字符串,但我不喜欢这个想法。 我的目标是在输入用户名和密码时保存有关用户的一些数据。 我想创建这样的东西:
user.logonname
user.language
我认为一个结构会起作用,所以我创造了这个:
Public Structure user
Public logonname As String
Public languagetype As String
End Structure
但我只能这样访问它:
Dim user1 as new user
但这不能覆盖公共结构,只是创建它的实例,因此其他表单将不具备我需要的信息。 我在VB6中看到类似这样的东西,但该程序使用的是DLL,包含这种类型的变量,我真的不明白它,我确信有更好的方法。 有人可以帮我弄这个吗? 提前谢谢。
答案 0 :(得分:1)
也许这会对您的项目有所帮助。祝你好运!
Public Type EmployeeName
FirstName As String
MidInit As String
LastName As String
End Type
Public Type EmployeeRecord
udtEmpName As EmployeeName
dtmHireDate As Date
sngHourlyRate As Single
dblQuarterlyEarnings(1 To 4) As Double
End Type
Dim udtEmpRec As EmployeeRecord
您将引用EmployeeName字段,如下所示:
udtEmpRec.udtEmpName.FirstName
udtEmpRec.udtEmpName.MidInit
udtEmpRec.udtEmpName.LastName
答案 1 :(得分:1)
感谢Plutonix,我想通了。如果有人需要它,我就是这样做的:
Public Module GeneralModule
Public Structure user
Public logonname As String
Public languagetype As String
End Structure
Public guser As New user
End Module
我可以随时随地访问guser。
示例:
Private Function login
'Some other code
guser.logonname = Me.userid.text
guser.languagetype = Me.ComboBoxLanguage.Text
End Function
答案 2 :(得分:0)
创建一个模块并在该模块中声明您的公共变量。那些变量将可供整个项目使用