powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Функция API
5 сообщений из 5, страница 1 из 1
Функция API
    #32367003
karpi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С наступающим Новым Годом!
Может ли VFP6 использовать API функцию по переводу из латиницы в рускоязычные буквы, если вдруг пользователь случайно стал набирать по-латински?
Есть ли такая функция или надо писать свое что-то?
...
Рейтинг: 0 / 0
Функция API
    #32367317
Для этих целей софтинка есть.
...
Рейтинг: 0 / 0
Функция API
    #32367414
malec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
karpi Нашёл софтину?
Если нет я могу скинуть написаную мной библиотеку на С .fll с описанием, там есть и это.
...
Рейтинг: 0 / 0
Функция API
    #32367459
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно и без библиотек:
Код: 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
Функция API
    #32371739
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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
5 сообщений из 5, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Функция API
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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