Формат ввода чисел

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Формат ввода чисел

Сообщение Игорь Столяров »

Привет всем !

Есть старый вопрос по форматированию числа в поле ввода. :(

Предположим, нужно ввести значения порядка: 123456789 без каких-либо разделителей.
Задаём маску поля @_N9 и получаем выделение пространства для отсутствующих цифр:

1.jpg
И вроде бы работать можно, но пользователи делают двойной щелчок мышкой на поле,
выбирается только пустой фрагмент, далее ошибки ввода и т.д.

2.jpg
Вроде бы этот вопрос решает маска поля @N9_ - но большие числа получаются с разделителем "123 456 789" :(
Для целых чисел все требования выполняются если закостылить маску числел как @s9.

Вопрос: Можно ли как-то подобрать маску без быделения незначащих разрядов и разделителей для дробных чисел ?
Спасибо ! :)
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
Ravenous
Бывалый
Сообщения: 56
Зарегистрирован: 06 Июль 2005, 14:25
Откуда: Москва

Формат ввода чисел

Сообщение Ravenous »

@N_9B не подойдёт?
Благодарень за терпение и понимание.

Изображение
kreator
✯ Ветеран ✯
Сообщения: 4983
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Формат ввода чисел

Сообщение kreator »

Ещё можно вот так вые-ться - @N_9_B.
We are hard at work… for you. :)
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Формат ввода чисел

Сообщение Игорь Столяров »

kreator писал(а): 28 Июль 2023, 14:07@N_9_B.
Это первое, что приходит в голову всем у кого я спрашиваю. :)
К сожалению нет. Формат экстремально допустимый (как и например @S9b) -
но результат как на первом рисунке. Увы ! :(
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Формат ввода чисел

Сообщение finsoftrz »

Можно попробовать отследить событие event:selected.

Код: Выделить всё

!===================================================================================
! Обработка позиционирования в цифровых полях 
!
FsFix_C11.EventSelectNums PROCEDURE 
   CODE
      if event()<>event:selected
         return
      end 
        
      SELF.Contr = field()
      if SELF.Contr = 0
         return
      end      
        
      case SELF.Contr{prop:type}
         of CREATE:entry
      orof CREATE:spin          
      else
           return
      end      
        
      SELF.ContrFormat = SELF.Contr{prop:text}
      case sub(SELF.ContrFormat,1,1)
         of 'N'
       orof 'n'
         select(SELF.Contr,1) 
         select(SELF.Contr)       
         return   
      end      
        
      case sub(SELF.ContrFormat,1,2)
         of '@N'
       orof '@n'
         select(SELF.Contr,1) 
         select(SELF.Contr)       
      end             
C6/C11, ШВС, tps/btrieve.
kreator
✯ Ветеран ✯
Сообщения: 4983
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Формат ввода чисел

Сообщение kreator »

Игорь Столяров писал(а): 28 Июль 2023, 14:13
kreator писал(а): 28 Июль 2023, 14:07@N_9_B.
Это первое, что приходит в голову всем у кого я спрашиваю. :)
К сожалению нет. Формат экстремально допустимый (как и например @S9b) -
но результат как на первом рисунке. Увы ! :(
Это я перебрал. Формат Ravenous работает как надо. Пробуйте. Пустышку не получается выбрать.
We are hard at work… for you. :)
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Формат ввода чисел

Сообщение Игорь Столяров »

kreator писал(а): 28 Июль 2023, 15:25 Пустышку не получается выбрать
Ну этот формат тупо подавляет незначащий ноль и не более того.
Если в поле с форматом "@n_9b" введено число 123 то будет выбрано "_____123" как и с "@n_9" :(
За теми кто отстал - не возвращаться. (С) Кодекс
kreator
✯ Ветеран ✯
Сообщения: 4983
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Формат ввода чисел

Сообщение kreator »

У меня не получается выбрать пустышку. Какой Кларион для начала? Превьюер и программа одинаковый результат даёт?
We are hard at work… for you. :)
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Формат ввода чисел

Сообщение Игорь Столяров »

finsoftrz писал(а): 28 Июль 2023, 15:15 событие event:selected.
Это бы сработало, если делать Select(?,1,[длина поля]) ...
Но нужно либо прописывать для каждого поля, либо разбирать на лету формат ...
И это убирает проблему с выбором, но всё равно незначащие пробелы перед цифрой остаются. :(
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Формат ввода чисел

Сообщение finsoftrz »

Игорь Столяров писал(а): 28 Июль 2023, 16:45
finsoftrz писал(а): 28 Июль 2023, 15:15 событие event:selected.
Это бы сработало, если делать Select(?,1,[длина поля]) ...
Но нужно либо прописывать для каждого поля, либо разбирать на лету формат ...
И это убирает проблему с выбором, но всё равно незначащие пробелы перед цифрой остаются. :(
Делалось для числовые полей с включенным mask. Без него, возможно, select как написали, не проверял за ненадобностью. Метод класса вызывается сразу после accept и отрабатывает для всех полей, у которых числовой формат.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Формат ввода чисел

Сообщение finsoftrz »

Должно решать проблему со второго скриншота.
C6/C11, ШВС, tps/btrieve.
kreator
✯ Ветеран ✯
Сообщения: 4983
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Формат ввода чисел

Сообщение kreator »

В топку! Пусть SV лечит. Собирались новые форматы добавить. Заодно не мешало бы и это починить.
We are hard at work… for you. :)
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4618
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Формат ввода чисел

Сообщение finsoftrz »

kreator писал(а): 29 Июль 2023, 17:43 В топку! Пусть SV лечит. Собирались новые форматы добавить. Заодно не мешало бы и это починить.
Не поминайте всуе. А то опять свалимся в бессмысленные рассуждения, а есть ли мальчик. :nono:
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Формат ввода чисел

Сообщение Игорь Столяров »

Я так понимаю, что система ввода чисел заточена под американский форматы "123,456.78" или "123 456,78".
С ними проблем-то нет - всё работает чётко и правильно. Остальное для них - это непонятный и надуманный бред,
вроде второй раскладки на клавиатуре. Поэтому здесь никто не будет что-либо исправлять - они этого не видят. ;)

Я помню сколько, в своё время, убил времени и сил, что бы объяснить Роберту Пареси, что в его iqXML есть глюк
с русской буквой "р". И то, он на меня смотрел с любопытством, как на бесплатный секс ежиков. :)
За теми кто отстал - не возвращаться. (С) Кодекс
kreator
✯ Ветеран ✯
Сообщения: 4983
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Формат ввода чисел

Сообщение kreator »

Игорь Столяров писал(а): 30 Июль 2023, 5:57 Я так понимаю, что система ввода чисел заточена под американский форматы "123,456.78" или "123 456,78".
С каким форматом проблем нет? Без десятичных.
We are hard at work… for you. :)
Ответить