试试吧: Private Sub Combo1_LostFocus() Dim i As Integer Dim isin As Boolean Dim s As Strings = Combo1.Text For i = 0 To Combo1.ListCount If Combo1.List(i) = s Then isin = True Exit For Else isin = False End If Next If Not isin Then MsgBox "not found!" Else MsgBox "found!" End If End Sub
555555555555555555,我对API不熟啊!除了抄,从来不用API,怎么办?
Private Sub Combo1_LostFocus()
Dim i As Integer
Dim isin As Boolean
Dim s As Strings = Combo1.Text
For i = 0 To Combo1.ListCount
If Combo1.List(i) = s Then
isin = True
Exit For
Else
isin = False
End If
Next
If Not isin Then
MsgBox "not found!"
Else
MsgBox "found!"
End If
End Sub
1.不准许用户输入新的内容
2.要求用户在添加新列表项就双击列表框,然后把事件放到双击列框中和上面大家说的方法,哪个EASY一点?
附:我喜欢用recordset对象,不喜欢用Data控件与ADODC控件。所以……
要添加新的为何不另外设个按钮呢,双击commbo会使人误解。这应该不算编程技巧,而只是编程方法吧,正象你喜欢用对象而不喜欢用控件来访问数据库
如果是新的列表项,根据你程序的要求,或直接把它加入列表;或对输入的文本进行有效性验证,返回对用户必要的提示,让用户决定。
使用不规范的方法或添加命令按钮并不足取,应把用户想象得尽可能的笨一点。
如果有新记录加入就在此基础上添加。
速度可能会快一点!(仅仅是设想、未测试)