powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / разделение на тысячи
7 сообщений из 7, страница 1 из 1
разделение на тысячи
    #35076131
МашкоБ.В.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Столкнулся с такой проблемой, поставил в TextBox где вводится сумма в InputMask
Код: plaintext
 999 , 999 , 999 , 999   
и сумма когда вводится разбивается на тысячи. Но при вводе не совсем корректно например число 1234567 отображается так 123,456,7 если перевести курсор на другой объект, то число отобразиться корректно 1,234,567. Как сделать так чтобы сразу при вводе число вводилось корректно, как на больших калькуляторах. VFP 9.
...
Рейтинг: 0 / 0
разделение на тысячи
    #35076255
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никак. Простыми средствами.

Проблема в том, что в процессе ввода числа выравниваются по левому краю. А в процессе отображения - по правому.

Т.е. для правильного отображения разделителей в процессе ввода надо сделать так, чтобы вводимое число было прижато к правому краю и отодвигался левый край. Но, повторюсь, простыми способами в FoxPro этот "фокус" не провернуть.
...
Рейтинг: 0 / 0
разделение на тысячи
    #35076308
МашкоБ.В.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо большое за объяснения.
Может кто сталкивался с подобным, и подскажет вариант решения.
...
Рейтинг: 0 / 0
разделение на тысячи
    #35076393
C этим сталкивались все, но подавляющее большинство посчитало такое выравнивание недосточно стОящим для ковыряния с ним.
...
Рейтинг: 0 / 0
разделение на тысячи
    #35076511
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МашкоБ.В.Спасибо большое за объяснения.
Может кто сталкивался с подобным, и подскажет вариант решения.
Только свой контрол делать, перехватывать нажатия кнопок и выводить как нравится.
...
Рейтинг: 0 / 0
разделение на тысячи
    #35077923
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Dima T" <nospam@sql.ru>; сообщил/сообщила в новостях следующее:
news:5181319@sql.ru...
Автор: Dima T
МашкоБ.В.
Спасибо большое за объяснения.
Может кто сталкивался с подобным, и подскажет вариант решения.



Cталкиваться не сталвкивался, но малость поковырялся и вот что получилось на
скорую руку:

В GotFockus
sys(2002) - отключили курсор, чтобы не морочится с ним (ну и ты сам
хотел, чтобы "все было как в калькуляторе")

в lostfockus
sys(2002,1) - включили курсор обратно, чтобы в других объектах он все
таки был

в keypress:

LPARAMETERS nKeyCode, nShiftAltCtrl

DO CASE

CASE between(nKeyCode, 48, 57) && Цифры

IF BETWEEN(This.Value, -9999999, 9999999) && Здесь цифр на одну меньше, чем
предполагается в Input mask (для знака "-")

This.Value=This.Value*10+nKeyCode-48

ENDIF

NODEFAULT



CASE nKeyCode=127 && BackSpace

This.Value=INT(This.Value/10)

NODEFAULT

CASE nKeyCode=45 && Минус

This.Value=-This.Value

NODEFAULT

CASE nKeyCode=7 && Del

NODEFAULT

ENDCASE



Может чего конечно и забыл - дальше сам смотри :)


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
разделение на тысячи
    #35088291
s_gonch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МашкоБ.В.Столкнулся с такой проблемой, поставил в TextBox где вводится сумма в InputMask
Код: plaintext
 999 , 999 , 999 , 999   
и сумма когда вводится разбивается на тысячи. Но при вводе не совсем корректно например число 1234567 отображается так 123,456,7 если перевести курсор на другой объект, то число отобразиться корректно 1,234,567. Как сделать так чтобы сразу при вводе число вводилось корректно, как на больших калькуляторах. VFP 9.

В GotFocus Event пишешь

this.InputMask=''"

В LostFocus Event пишешь

this.InputMask=''999,999,999"

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


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