如:
chuli = chuli + "[A-Za-z]*"
可以实现输入递增匹配,可如何来实现递减匹配呢?
就象 输入 list ,然后匹配,list* 匹配成功,lis* 匹配成功 li* 匹配成功
l* 匹配成功主要是来实现模糊查询功能,
最好能跟点程序。
高手请指点。
chuli = chuli + "[A-Za-z]*"
可以实现输入递增匹配,可如何来实现递减匹配呢?
就象 输入 list ,然后匹配,list* 匹配成功,lis* 匹配成功 li* 匹配成功
l* 匹配成功主要是来实现模糊查询功能,
最好能跟点程序。
高手请指点。
Begin VB.Form Form1
Caption = "Form1"
ClientHeight = 3195
ClientLeft = 60
ClientTop = 345
ClientWidth = 4680
LinkTopic = "Form1"
ScaleHeight = 3195
ScaleWidth = 4680
StartUpPosition = 3 'Windows Default
Begin VB.TextBox Text1
Height = 285
Left = 240
TabIndex = 1
Text = "Text1"
Top = 975
Width = 1050
End
Begin VB.ComboBox cbo
Height = 315
Left = 270
TabIndex = 0
Text = "cbo"
Top = 375
Width = 1890
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option ExplicitPrivate Sub Form_Load()
cbo.AddItem ("abc")
cbo.AddItem ("bcd")
cbo.AddItem ("cde")
cbo.AddItem ("def")
cbo.AddItem ("efg")
cbo.AddItem ("fgh")
cbo.AddItem ("ghi")
cbo.AddItem ("hij")
End SubPrivate Sub Text1_Change()
aa = Trim(Text1.Text)
bb = cbo.hwnd
cbo.ListIndex = index(aa, bb)
End Sub'module code
Attribute VB_Name = "Module1"
Option ExplicitPublic 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_GETCOUNT = &H146Public Const CB_FINDSTRING = &H14C
Public aa As String
Public bb As Long
Public Function index(aa As String, bb As Long) As Long
index = SendMessage(bb, CB_FINDSTRING, -1, ByVal CStr(Form1.Text1.Text))
Debug.Print index
End Function