ComboBox和DateCombo的简单问题,在线等
由于ComboBox和DateCombo下拉条中有很多选择信息,我想通过输入来获得,然后按回车
如果我输入的内容有在这控件中,按回车后(不想用鼠标点击),控件的.text为我输入的内容
怎么处理,谢谢
问题点数:30、回复次数:2Top
1 楼jilong4(凹凹)回复于 2004-12-02 19:36:21 得分 10
If KeyCode = 13 Then
Combo1.AddItem Text1.Text
End IfTop
2 楼happy_sea(开心海(数据读取中,请稍候......))回复于 2004-12-02 20:00:13 得分 20
bas中:
Option Explicit
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Const CB_FINDSTRING = &H14C
窗体中:
Private Sub Combo1_Change()
Dim iStart As Integer
Dim sString As String
Static iLeftOff As Integer
iStart = 1
iStart = Combo1.SelStart
If iLeftOff <> 0 Then
Combo1.SelStart = iLeftOff
iStart = iLeftOff
End If
sString = CStr(Left(Combo1.Text, iStart))
Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRING, -1, ByVal CStr(Left(Combo1.Text, iStart)))
If Combo1.ListIndex = -1 Then
iLeftOff = Len(sString)
Combo1.Text = sString
End If
Combo1.SelStart = iStart
iLeftOff = 0
End Sub
以上可实现在combo中输入时自动匹配其内容,然后你再在Combo1_Keypress事件中加入keyascii=13这个事件的处理即可。
Top




