combo可以响应CB_FINDSTRING消息,你可以在用户输入完成后查找一把

解决方案 »

  1.   

    呵呵,用sendmessage?
    555555555555555555,我对API不熟啊!除了抄,从来不用API,怎么办?
      

  2.   

    试试吧:
    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
      

  3.   

    我的主意,提供出来讨论:
    1.不准许用户输入新的内容
    2.要求用户在添加新列表项就双击列表框,然后把事件放到双击列框中和上面大家说的方法,哪个EASY一点?
    附:我喜欢用recordset对象,不喜欢用Data控件与ADODC控件。所以……
      

  4.   

    这种使用chenjun(赤狼风云) 的方法最好,不用总也查数据  库
    要添加新的为何不另外设个按钮呢,双击commbo会使人误解。这应该不算编程技巧,而只是编程方法吧,正象你喜欢用对象而不喜欢用控件来访问数据库
      

  5.   

    还是使用chenjun(赤狼风云)的方法好。
    如果是新的列表项,根据你程序的要求,或直接把它加入列表;或对输入的文本进行有效性验证,返回对用户必要的提示,让用户决定。
    使用不规范的方法或添加命令按钮并不足取,应把用户想象得尽可能的笨一点。
      

  6.   

    把combo中的内容连成一string再用INSTR函数如何!
    如果有新记录加入就在此基础上添加。
    速度可能会快一点!(仅仅是设想、未测试)