Перевернуть раскладку

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
petroff
Обычный пользователь
Обычный пользователь
 
Сообщения: 79
Зарегистрирован: 09.09.2003 (Вт) 23:28
Откуда: Зимбабуа

Перевернуть раскладку

Сообщение petroff » 28.11.2007 (Ср) 0:45

Ув.гуру подскажите как проше сделать . Набирается текст в текстовой блок , при нажати кнопки он должен менятся на другой , по типу как на клавишах f на а . d на в, h на р и т.д .
У меня мысли сделать по типу

Select Case символ
Case 'a'
text='ф'
Сase 's'
text='ы'
Case.....

Это единственый вариант ?

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 28.11.2007 (Ср) 1:57

Проще именно так как ты хочешь. Я так тоже когда-то делал, вроде нормально работало.
Подпись проходит рефакторинг

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 28.11.2007 (Ср) 8:26

проще при помощи двух строк сделать

З.Ы. поправил
Последний раз редактировалось Viper 28.11.2007 (Ср) 11:27, всего редактировалось 1 раз.
Весь мир матрица, а мы в нем потоки байтов!

kibernetics
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 945
Зарегистрирован: 03.05.2006 (Ср) 13:31
Откуда: Minsk

Сообщение kibernetics » 28.11.2007 (Ср) 10:27

petroff, ты просто раскладку хочешь поменять автоматически?
юзер вводит на английском, а нужно чтобы автоматом русскими писало?

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 28.11.2007 (Ср) 11:26

kibernetics, похоже именно это, судя по заголовку.

З.Ы. Выше написал при помощи двух массивов, сие непрально, при помощи двух строк надо, типа:

Код: Выделить всё
Const sLat As String = "qwertyuiop[]asdfghjkl;'zxcvbnm,.`"
Const sKir As String = "йцукенгшщзхъфывапролджэячсмитьбюё"


Далее искать позицию вводимого символа в первой строке и заменять на символ с соответствующей позиции из второй строки.
Весь мир матрица, а мы в нем потоки байтов!

kibernetics
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 945
Зарегистрирован: 03.05.2006 (Ср) 13:31
Откуда: Minsk

Сообщение kibernetics » 28.11.2007 (Ср) 12:05

перевернуть раскладку без смены клавиатуры? если со сменой, то делается элементарно через АПИ:
объявляешь:
Код: Выделить всё
Private Declare Function ActivateKeyboardLayout Lib "user32" (ByVal HKL As Long, ByVal flags As Long) As Long

ну и используешь, например,
Код: Выделить всё
Private Sub txtFind_GotFocus()
     ActivateKeyboardLayout 68748313, 0
End Sub

petroff
Обычный пользователь
Обычный пользователь
 
Сообщения: 79
Зарегистрирован: 09.09.2003 (Вт) 23:28
Откуда: Зимбабуа

Сообщение petroff » 28.11.2007 (Ср) 13:30

З.Ы. Выше написал при помощи двух массивов, сие непрально, при помощи двух строк надо, типа:


Код:
Const sLat As String = "qwertyuiop[]asdfghjkl;'zxcvbnm,.`"
Const sKir As String = "йцукенгшщзхъфывапролджэячсмитьбюё"


Спасибо , то-что надо !!!!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot и гости: 27

    TopList