Oracle 如何在vb6中检查组合的列表索引?
我在这里加载组合框的值,但我不想将Oracle 如何在vb6中检查组合的列表索引?,oracle,vb6,Oracle,Vb6,我在这里加载组合框的值,但我不想将ListIndex属性设置为-1 Private Sub Form_Load() OPENCON RES.Open "DIVISION", CON, adOpenDynamic, adLockOptimistic, adCmdTable If RES.RecordCount > 0 Then RES.MoveFirst For i = 0 To RES.RecordCount - 1
ListIndex
属性设置为-1
Private Sub Form_Load()
OPENCON
RES.Open "DIVISION", CON, adOpenDynamic, adLockOptimistic, adCmdTable
If RES.RecordCount > 0 Then
RES.MoveFirst
For i = 0 To RES.RecordCount - 1
CmbDiv.AddItem RES.Fields("DIV").Value
CmbDiv.ItemData(CmbDiv.NewIndex) = RES.Fields("DIVID").Value
RES.MoveNext
Next
End If
RES.Open "HNM", CON, adOpenDynamic, adLockOptimistic, adCmdTable
If RES.RecordCount > 0 Then
RES.MoveFirst
For i = 0 To RES.RecordCount - 1
CmbHouse.AddItem Trim(RES.Fields("HOUSE").Value)
CmbHouse.ItemData(CmbHouse.NewIndex) = RES.Fields("HID").Value
RES.MoveNext
Next
End If
End Sub
这是我用来修改记录的代码
Private Sub CmdSave_Click()
sql = "UPDATE STUDENT_RECORD_DATABASE SET "
sql = sql + "ROLLNO= " & Val(CmbRNO) & ","
sql = sql + "DIVID='" & Val(CmbDiv.ItemData(CmbDiv.ListIndex)) & "',"
sql = sql + "HID=" & Val(CmbHouse.ItemData(CmbHouse.ListIndex)) & " "
sql = sql + "WHERE ROLLNO= " & Val(CmbRNO) & ""
Set RES = CON.Execute(sql)
End Sub
在运行代码的时候,如果我同时修改了division和house,那么就可以了
但当我让其中任何一个值(不修改值)时,它会在CmdSave\u单击的第3行和第4行显示错误:
无效的属性数组值
将数据加载到组合框后,将listindex设置为0
Combo1.ListIndex = 0
不过最好检查listindex是否为-1,如果为-1,则不要执行该操作,或者向用户发出警告,提示他应该从组合框中选择某个内容