Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Функция API / 5 сообщений из 5, страница 1 из 1
30.12.2003, 14:50
    #32367003
karpi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функция API
С наступающим Новым Годом!
Может ли VFP6 использовать API функцию по переводу из латиницы в рускоязычные буквы, если вдруг пользователь случайно стал набирать по-латински?
Есть ли такая функция или надо писать свое что-то?
...
Рейтинг: 0 / 0
30.12.2003, 22:53
    #32367317
Функция API
Для этих целей софтинка есть.
...
Рейтинг: 0 / 0
31.12.2003, 10:32
    #32367414
malec
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функция API
karpi Нашёл софтину?
Если нет я могу скинуть написаную мной библиотеку на С .fll с описанием, там есть и это.
...
Рейтинг: 0 / 0
31.12.2003, 11:43
    #32367459
Urri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функция API
А можно и без библиотек:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
*!* text1.KeyPress(nKeyCode, nShiftAltCtrl)
LPARAMETERS nKeyCode, nShiftAltCtrl
nodefault
LOCAL nTransCode
IF chr(nKeyCode)$'QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>qwertyuiop[]asdfghjkl;'+ "'"+'zxcvbnm,.'
  nTransCode=ASC( ;
   CHRTRAN(chr(nKeyCode),;
   'QWERTYUIOP{}ASDFGHJKL:" ZXCVBNM<>qwertyuiop[]asdfghjkl;'+"'"+'zxcvbnm,.', ;
   'ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮйцукенгшщзхъфывапролджэячсмитьбю'))
 ELSE
   nTransCode=nKeyCode
 ENDIF
 DODEFAULT(nTransCode, nShiftAltCtrl)

Примерно так ;-)
С наступающим новым годом всех!
...
Рейтинг: 0 / 0
09.01.2004, 16:07
    #32371739
Igor Korolyov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функция API
karpiиспользовать API функцию по переводу из латиницы в рускоязычные буквы
Начнём с того, что в API нет такой функции. CHRTRAN как показано должен помочь в переконвертации уже введённого текста, а вот что есть в API - так это переключение раскладок клавиатуры - ну т.е. можно скажем в GotFocus контрола или Activate формы всегда переключать текущую раскладку клавиатуры на нужную тебе. Вопрос из разряда FAQ:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
#DEFINE hklRus  "00000419 " && - name from 0x0419 Russian 
#DEFINE hklEng  "00000409 " && - name from 0x0409 English (US)
#DEFINE KLF_ACTIVATE  1  && 0x00000001

DECLARE LONG LoadKeyboardLayout IN WIN32API ; 
	STRING pwszKLID, ; && input locale identifier
	INTEGER Flags      && input locale identifier options

LOCAL lnRetCode
lnRetCode = LoadKeyboardLayout(hklRus, KLF_ACTIVATE)
lnRetCode = LoadKeyboardLayout(hklEng, KLF_ACTIVATE)

WBR, Igor
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Функция API / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]