【问题标题】:Vb6 Form Load errorVb6 表单加载错误
【发布时间】:2011-07-05 14:05:21
【问题描述】:

我在调试一个用 vb6 编写的简单应用程序时遇到了困难。在这个阶段我要做的就是打开一个表单并用数据库中的条目填充一个组合框。

这是我的代码:

 Public Sub Form_Load()

''''''''''''''''''''''''''''Fill ComboBox with open Tickets'''''''''''''''''''
Dim Sqlstring As String
Dim rstCurrentTickets As Recordset

Sqlstring = "Select * from TroubleTickets where ResolvedDate IS Null"
Set rstCurrentTickets = cnnSel.OpenRecordset(Sqlstring)

Do While Not rstCurrentTicket.EOF

If Not IsNull(rstCurrentTicket.Fields!TroubleTicketId) Then
        TicketComboBox.AddItem (Trim(rstCurrentTicket.Fields!Title))
End If
TicketComboBox.MoveNext
Loop
''''''''''''''''''''''''''''End of Segment'''''''''''''''''''


If CreateNewTicketRadioButton.value = True Then
CreateSubmitButton.visible = True
CloseButton.visible = False
EditButton.visible = False

ElseIf (EditOpenTicketRadioButton.value = True) Then

CreateSubmitButton.visible = False
CloseButton.visible = False
EditButton.visible = True

ElseIf (CloseResolvedTicketRadioButton.value = True) Then

CreateSubmitButton.visible = False
CloseButton.visible = True
EditButton.visible = False

End If



End Sub

当我在调试器中运行它时,它会在 Load Sub 上停止并给出错误:“编译错误:找不到方法或数据成员。”

感谢您的帮助!

【问题讨论】:

    标签: database vb6


    【解决方案1】:

    这行有错别字

    Do While Not rstCurrentTicket.EOF
    

    它应该在变量名的末尾有一个s:

    Do While Not rstCurrentTickets.EOF
    

    在你引用这个变量的其他地方也有类似的问题。

    您确实需要在您的 VB6 IDE 中打开 Option Explicit,并确保您已经创建的每个表单/模块/类在文件顶部都有它。这会强制所有变量都不能正确声明,并且会消除许多难以发现的错误。

    【讨论】:

    • 感谢它解决了我的问题
    • 如果你避免不必要的双重否定,它也可以让你的逻辑更容易理解,即直到 EOF 而不是 Do While Not EOF。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-20
    • 2013-07-05
    • 1970-01-01
    • 2018-09-03
    • 2010-11-25
    • 1970-01-01
    相关资源
    最近更新 更多