Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As LongPublic Const CB_SHOWDROPDOWN = &H14F
#If Win32 Then
Public Const CB_FINDSTRING = &H14C
Public Const CB_FINDSTRINGEXACT = &H158
Public Const LB_FINDSTRING = &H18F
Public Const LB_FINDSTRINGEXACT = &H1A2
#Else
Public Const WM_USER = &H400
Public Const CB_FINDSTRING = WM_USER + 12
Public Const CB_FINDSTRINGEXACT = WM_USER + 24
Public Const LB_FINDSTRING = WM_USER + 16
Public Const LB_FINDSTRINGEXACT = WM_USER + 35
#End IfPublic Function FindFirstMatch(ByVal ctlSearch As Control, ByVal SearchString As String, ByVal FirstRow As Integer, ByVal Exact As Boolean) As Integer#If Win32 Then
Dim Index As Long
#Else
Dim Index As Integer
#End IfOn Error Resume Next
If TypeOf ctlSearch Is ComboBox Then
If Exact Then
Index = SendMessage(ctlSearch.hwnd, CB_FINDSTRINGEXACT, FirstRow, ByVal SearchString)
Else
Index = SendMessage(ctlSearch.hwnd, CB_FINDSTRING, FirstRow, ByVal SearchString)
End If
ElseIf TypeOf ctlSearch Is ListBox Then
If Exact Then
Index = SendMessage(ctlSearch.hwnd, LB_FINDSTRINGEXACT, FirstRow, ByVal SearchString)
Else
Index = SendMessage(ctlSearch.hwnd, LB_FINDSTRING, FirstRow, ByVal SearchString)
End If
End IfFindFirstMatch = IndexEnd Function这上面是一个vb中的baslist模块 但不知道撒意思!就大侠每句解释哈!
还有这个Private Sub Text1_Change()
Dim intRowIndex As Integer
intRowIndex = FindFirstMatch(List1, Text1.Text, 1, False)
If intRowIndex > -1 Then
List1.TopIndex = intRowIndex
End IfEnd Sub
是撒意思嘛!!
#If Win32 Then
Public Const CB_FINDSTRING = &H14C
Public Const CB_FINDSTRINGEXACT = &H158
Public Const LB_FINDSTRING = &H18F
Public Const LB_FINDSTRINGEXACT = &H1A2
#Else
Public Const WM_USER = &H400
Public Const CB_FINDSTRING = WM_USER + 12
Public Const CB_FINDSTRINGEXACT = WM_USER + 24
Public Const LB_FINDSTRING = WM_USER + 16
Public Const LB_FINDSTRINGEXACT = WM_USER + 35
#End IfPublic Function FindFirstMatch(ByVal ctlSearch As Control, ByVal SearchString As String, ByVal FirstRow As Integer, ByVal Exact As Boolean) As Integer#If Win32 Then
Dim Index As Long
#Else
Dim Index As Integer
#End IfOn Error Resume Next
If TypeOf ctlSearch Is ComboBox Then
If Exact Then
Index = SendMessage(ctlSearch.hwnd, CB_FINDSTRINGEXACT, FirstRow, ByVal SearchString)
Else
Index = SendMessage(ctlSearch.hwnd, CB_FINDSTRING, FirstRow, ByVal SearchString)
End If
ElseIf TypeOf ctlSearch Is ListBox Then
If Exact Then
Index = SendMessage(ctlSearch.hwnd, LB_FINDSTRINGEXACT, FirstRow, ByVal SearchString)
Else
Index = SendMessage(ctlSearch.hwnd, LB_FINDSTRING, FirstRow, ByVal SearchString)
End If
End IfFindFirstMatch = IndexEnd Function这上面是一个vb中的baslist模块 但不知道撒意思!就大侠每句解释哈!
还有这个Private Sub Text1_Change()
Dim intRowIndex As Integer
intRowIndex = FindFirstMatch(List1, Text1.Text, 1, False)
If intRowIndex > -1 Then
List1.TopIndex = intRowIndex
End IfEnd Sub
是撒意思嘛!!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货