:: Visual Foxpro, Foxpro for DOS
ввод числа с клавиатуры
glaz58
Автор

Сообщений: 812
Откуда: Воронеж
Дата регистрации: 09.02.2008
Уважаемые знатоки! Требуется ввести число с дробной частью с клавиатуры. Чаще всего пользователи вводят число на правой части клавиатуры (которая давно называлась "калькулятор"). Я применяю функцию Inputbox. На английской раскладке десятичная точка печатается как ".", а на русской как ",". Что нужно сделать, чтобы введённое с дробной частью число всегда воспринималось именно как число? (VFP9 Windows 7)
Ratings: 0 negative/0 positive
Re: ввод числа с клавиатуры
AndyNigmatec

Сообщений: 1573
Откуда: Волгоград
Дата регистрации: 28.06.2015
в методе KeyPress

LPARAMETERS nKeyCode, nShiftAltCtrl
IF InList(CHR(nKeyCode),'.',',') AND CHR(nKeyCode)<>SET('POINT')
NODEFAULT
DoDefault(ASC(SET('POINT')),nShiftAltCtrl)
*!* или вместо DoDefault в данном случае можно дать такую команду
*!* KeyBoard SET('POINT') PLAIN CLEAR
ENDIF
Ratings: 0 negative/2 positive
Re: ввод числа с клавиатуры
ZenTigra

Сообщений: 514
Дата регистрации: 03.12.2004
Если ввод осуществляется только в русской раскладке, можно сделать так

SET POINT TO ',' && Разделитель Кома

PS.Но при этом проблемы возникнут когда пользователь переключиться на английскую раскладку...
Ratings: 0 negative/0 positive
Re: ввод числа с клавиатуры
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
KeyPress, конечно, не поможет с Inputbox.
Впрочем, тому кто в реальной программе для реальных пользователей испольузет Inputbox - уже вряд ли что-либо поможет


------------------
WBR, Igor
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 24 (Гостей: 24)

© 2000-2024 Fox Club 
Яндекс.Метрика