Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > не ищется на русском в combo


Автор: Yulo 10.4.2008, 17:42
Подскажите, пож, 

создал combo стиля DropDownList

набирая латинские буквы или цифры ищется строка,
но если набираю на русском - облом.

как справиться, поможите!

http://forum.vingrad.ru/html/emoticons/pack/dash1.gif
smile

Автор: 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

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)