声明vb6时初始化整数值

时间:2016-03-12 17:04:41

标签: vba vb6

如何在声明期间初始化变量值。

我正在使用VB6, 我试过了

public i as integer = 0

但我收到了错误

  

预期:声明结束,“=”突出显示

我想将初始值设置为0。

从评论中编辑:

我想在没有数据库帮助的情况下创建登录表单。

模块:所以我创建了一个user_name(1到10) - 数组和密码(1到10)数组

form1 我希望每次i的值增加时最多注册10个用户//形式// i = 1 register_user(i)= uname register_pass(i)= upass i = i + 1 //结束//但是每次我去那个表单时,值都会再次设置为1,我应该怎么做。

3 个答案:

答案 0 :(得分:8)

在VBA和VB6中,您无法初始化变量。您必须使用可执行语句。

但是,每个变量都有一个默认初始化值。

来自VB6 documentation

  

初始化变量时,数值变量初始化为   0,将可变长度字符串初始化为零长度字符串   (“”),固定长度的字符串用零填充。变种   变量初始化为Empty。用户定义的每个元素   类型变量被初始化,就像它是一个单独的变量一样。

实际上,在你的情况下,

public i as integer = 0

不起作用,但是下一个方法确实有效,并且就是这样:

public i as integer

答案 1 :(得分:0)

我认为问题是你试图在声明中实例化一个公共变量...... Dim i As Integer: i = 1有效但不公开。您可以执行此操作或声明公共变量,然后在子类的第一行中实例化它。

答案 2 :(得分:0)

Vacip根据您的要求将其设置为0来回答它,但要构建它...如果您需要一个公共变量作为默认值以外的其他值启动,您将第一次将其设置为该值它在一个子中被调用。

如果你有多个可能第一次调用它,然后它来回传递,你需要检查以确保它还没有被设置。你可以使用公共布尔值来做到这一点。

如果您打开当地人并逐步完成此操作,您可以看到一种方法。

Public iTesti As Integer 'defaults to 0
Public bTesti As Boolean 'defaults to FALSE

Public Sub testi()
If bTesti = False Then 'btesti is false and iteseti is 0
    iTesti = 1
    bTesti = True
End If
iTesti = 2
testi2
End Sub

Public Sub testi2()
If bTesti = False Then 'btesti is true and itesti is 2
    iTesti = 1
    bTesti = True
End If
iTesti = 3
End Sub