| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > VB6 > не ищется на русском в combo |
| Автор: Yulo 10.4.2008, 17:42 |
| Подскажите, пож, создал combo стиля DropDownList набирая латинские буквы или цифры ищется строка, но если набираю на русском - облом. как справиться, поможите! http://forum.vingrad.ru/html/emoticons/pack/dash1.gif |
| Автор: I_Am_Rock 10.4.2008, 23:15 |
| См. прикрепленный файл Но, возможно, есть более удобный способ...) |
| Автор: Yulo 11.4.2008, 14:25 |
| Хотелось бы проще, неужели нет русификации, в List то работает, глюк мелкософт? спасибо |
| Автор: vbCrLf 11.4.2008, 14:50 |
| Было бы удобнее если б ты запостил код своего комбобокса. |
| Автор: Yulo 11.4.2008, 16:21 |
| чтобы запостить надо выковыривать его из большой проги. Под экселем работало, а как перенес на VB6 - перестало. А что у кого-то работает? Поставил сервиспак 5, все также У меня подозрение, что в VB6 это не работает в принципе. Т.е. русский не понимается. |
| Автор: Yulo 11.4.2008, 17:26 |
| странно, что мелкософт до 5 пака не решил этот вопрос, может я что не так делаю. Оказалось, что я лет 5 назад уже решал эту задачу, вариант, кому интересно: Private Sub List1_KeyPress(KeyAscii As Integer) Static s As String Static t As Double Dim i As Integer If KeyAscii > 64 Then If CDbl(Now) - t > 0.00002 Then s = "" ElseIf Len(s) = 10 Then Exit Sub End If t = Now s = s & UCase(Chr(KeyAscii)) With Me For i = 0 To .List1.ListCount - 1 If s < UCase(.List1.List(i)) Then .List1.ListIndex = i .List1.SetFocus Exit Sub End If Next End With End If End Sub |