PDA

Просмотр полной версии : Ввод длинного числа, почти текста



BoolAB
17.03.2022, 19:09
Здравствуйте!
СП3хх. Есть необходимость ручного ввода строки, состоящей исключительно из цифр. Длина 15 символов.
Штатный цифровой ввод вводит именно числа, укладывая в DWORD в лучшем случае. Не укладываемся
Штатный текстовый ввод не даёт ограничить ввод только циферками.
Что может присоветовать коллективный разум?

Евгений Кислов
17.03.2022, 19:19
Здравствуйте!
СП3хх. Есть необходимость ручного ввода строки, состоящей исключительно из цифр. Длина 15 символов.
Штатный цифровой ввод вводит именно числа, укладывая в DWORD в лучшем случае. Не укладываемся
Штатный текстовый ввод не даёт ограничить ввод только циферками.
Что может присоветовать коллективный разум?

Добрый день.
Можете сделать свой Keypad, оставив на нем только цифры.
См. пример: https://ftp.owen.ru/SP300/99_ForumFiles/Example_CustomInputDialog.txp

kondor3000
17.03.2022, 21:40
Здравствуйте!
СП3хх. Есть необходимость ручного ввода строки, состоящей исключительно из цифр. Длина 15 символов.
Штатный цифровой ввод вводит именно числа, укладывая в DWORD в лучшем случае. Не укладываемся
Штатный текстовый ввод не даёт ограничить ввод только циферками.
Что может присоветовать коллективный разум?

Вот дисплей ввода Стринг на 20 символов, с цифровым вводом59741
Занимает 10 регистров подряд, можно уменьшить до 16 символов ( 8 регистров)

BoolAB
24.03.2022, 16:58
Вот дисплей ввода Стринг на 20 символов, с цифровым вводом59741
Занимает 10 регистров подряд, можно уменьшить до 16 символов ( 8 регистров)

Похоже на то, что надо. Но при копировании его в свой проект благополучно открывается штатная клавиатура "Клавиатура_60036", которая алфавитно-цифровая.

BoolAB
24.03.2022, 16:59
Добрый день.
Можете сделать свой Keypad, оставив на нем только цифры.
См. пример: https://ftp.owen.ru/SP300/99_ForumFiles/Example_CustomInputDialog.txp

Окно с цифровым кейпадом себе скопировал. Как его привязать в качестве клавиатуры к элементу текстового ввода?

Евгений Кислов
24.03.2022, 17:02
Окно с цифровым кейпадом себе скопировал. Как его привязать в качестве клавиатуры к элементу текстового ввода?

Элемент текстового ввода тоже надо скопировать из примера в ваш проект - там про это написано.
Пример содержит элементы ввода с уже зацепленными на них номерами окон с клавиатурами (номера этих окон в примере написаны).

BoolAB
24.03.2022, 18:27
Элемент текстового ввода тоже надо скопировать из примера в ваш проект - там про это написано.
Пример содержит элементы ввода с уже зацепленными на них номерами окон с клавиатурами (номера этих окон в примере написаны).

Дык, к элементам текстового ввода в примере привязаны полноценные клавиатуры. Усечённые кейпады привязаны к элементам цифрового ввода, где размер ограничен DWORD.

Евгений Кислов
24.03.2022, 18:35
Дык, к элементам текстового ввода в примере привязаны полноценные клавиатуры. Усечённые кейпады привязаны к элементам цифрового ввода, где размер ограничен DWORD.

И эти "полноценные клавиатуры" доступны для редактирования (окна 1010-1012).
Убрать клавиши букв - несложно.

BoolAB
24.03.2022, 18:44
И эти "полноценные клавиатуры" доступны для редактирования (окна 1010-1012).
Убрать клавиши букв - несложно.

Да, дошло уже, что почистить можно клавку. Спасибо!

keysansa
24.03.2022, 18:58
Здравствуйте!
СП3хх. Есть необходимость ручного ввода строки, состоящей исключительно из цифр. Длина 15 символов.
Штатный цифровой ввод вводит именно числа, укладывая в DWORD в лучшем случае. Не укладываемся
Штатный текстовый ввод не даёт ограничить ввод только циферками.
Что может присоветовать коллективный разум?

15 символов, не связанных смысловой нагрузкой очень сложно ввести правильно.
Советую поступить так же, как вводят IP адрес/номер телефона. Группами по 2-4 цифры.
А при обработке их склеить.

kondor3000
24.03.2022, 19:04
Похоже на то, что надо. Но при копировании его в свой проект благополучно открывается штатная клавиатура "Клавиатура_60036", которая алфавитно-цифровая.

Штатную клаву удаляете и из примера копируете "Клавиатура_60036" и вставляете точно также или любую вам подходящую.

keysansa
26.03.2022, 10:15
Там вроде точка есть. На выходе их все почикать

Да, при обработке вырезать все, что не является цифрой. Еще и избавит от получения 0 после преобразования в число, если был введен неверный символ.

keysansa
26.03.2022, 13:11
15 цифр в 64 бита не помещаются.

keysansa
26.03.2022, 15:25
Да ладно. У меня помещаются. И в нормальном и в bcd[m]-формате


Чего-то замкнуло - навание темы перечитал ))

Вы правы, прошу прощения.