Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.12.36.147] |
|
Сообщ.
#1
,
|
|
|
Вот еще один примерчик для FAQ
Пример демонстрирует автоматическую подстановку в ComboBox Public Function ComboAutoComplete(ByRef comboObj As ComboBox) As Boolean Dim lngItemNum As Long Dim lngSelectedLength As Long Dim lngMatchLength As Long Dim strSearchText As String Dim sTypedText As String Const CB_LOCKED As Object = &H255 Try With (comboObj) If .Items.Count > 0 Then If .Text = Nothing Then Exit Function End If comboObj.BeginUpdate() If ((InStr(1, .Text, .Tag, vbTextCompare) <> 0 And Len(.Tag) = Len(.Text) - 1) Or (Microsoft.VisualBasic.Left(.Text, 1) <> Microsoft.VisualBasic.Left(.Tag, 1) And .Tag <> Nothing)) And .Tag <> CStr(CB_LOCKED) Then strSearchText = .Text lngSelectedLength = Len(strSearchText) lngItemNum = .FindString(strSearchText) ComboAutoComplete = Not (lngItemNum = -1) If ComboAutoComplete Then .Tag = CB_LOCKED .SelectedIndex = lngItemNum lngMatchLength = Len(.Text) - lngSelectedLength sTypedText = strSearchText .SelectionStart = lngSelectedLength Dim Temp As Integer Temp = lngMatchLength .SelectionLength = Temp .Tag = sTypedText End If ElseIf .Tag <> CStr(CB_LOCKED) Then .Tag = .Text End If comboObj.EndUpdate() End If End With Catch err As Exception MsgBox(err.Message & err.StackTrace) End Try End Function Пример использования в аттаче Эта тема была разделена из темы "Наполнение и развитие FAQ" Прикреплённый файлComboAutoCompleteExample.rar (45.88 Кбайт, скачиваний: 273) |