Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: RTB меняет раскладки... Добавлено: 09.06.04 16:29  

Автор вопроса:  Calhoon | Web-сайт: 4elovekssn.blog.ru | ICQ: 789764 
Бесит то, что если в RTB ввести текст в разных раскладках, то при редектировании текста RTB сам менят раскладку в зависимости от того, какая использовалась в тексте. Думаю, вы меня поняли... Так вот, как это отрубить нафиг?

Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #1
Добавлено: 09.06.04 17:36
Изменять ее самому, детектируя нажатие клавишь переключения раскладки и само переключение...

Ответить

Номер ответа: 2
Автор ответа:
 Calhoon



ICQ: 789764 

Вопросов: 90
Ответов: 230
 Web-сайт: 4elovekssn.blog.ru
 Профиль | | #2
Добавлено: 10.06.04 04:19
А чего-нибудь подроще нету? а то ведь еще придется следить, какие раскладки есть, на что преключается, на что поменять... А если раскладок больше 2х.........

Ответить

Номер ответа: 3
Автор ответа:
 Calhoon



ICQ: 789764 

Вопросов: 90
Ответов: 230
 Web-сайт: 4elovekssn.blog.ru
 Профиль | | #3
Добавлено: 15.06.04 04:15
Ну ладно, отловить раскладку я еще смогу, а поменять ее как?

Ответить

Номер ответа: 4
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #4
Добавлено: 15.06.04 15:10
Private Declare Function ActivateKeyboardLayout Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long
Private Declare Function GetKeyboardLayoutName Lib "user32" Alias "GetKeyboardLayoutNameA" (ByVal pwszKLID As String) As Long

    Const kb_lay_ru As Long = 68748313
    Const kb_lay_en As Long = 67699721


Public Sub ChangeLang(Optional NewLang As String, Optional Opposite As Boolean)
    If Len(NewLang) And Opposite = False Then
        If LCase(NewLang) = "eng" Then Call ActivateKeyboardLayout(kb_lay_en, 0&;)
        If LCase(NewLang) = "rus" Then Call ActivateKeyboardLayout(kb_lay_ru, 0&;)
    End If
    If Len(NewLang) = 0& And Opposite = True Then
        ;Dim KeybLayoutName As String
        KeybLayoutName = String(9, 0)

        Call GetKeyboardLayoutName(KeybLayoutName)
        If KeybLayoutName = 419 Then Call ActivateKeyboardLayout(kb_lay_en, 0&;)
        If KeybLayoutName = 409 Then Call ActivateKeyboardLayout(kb_lay_ru, 0&;)
    End If
End Sub

Ответить

Номер ответа: 5
Автор ответа:
 Calhoon



ICQ: 789764 

Вопросов: 90
Ответов: 230
 Web-сайт: 4elovekssn.blog.ru
 Профиль | | #5
Добавлено: 17.06.04 04:14
У... заморочки... Не понял, что за Oppisite... И вообще, хочется чего-нибудь универсального, на любую раскладку...

Ответить

Номер ответа: 6
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #6
Добавлено: 17.06.04 10:26
я уже сам много че не помню :)

ну что же смотри эти функции в MSDN и делай универсал... я те лишь направление выдал :)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам