Поставить ограничение на длину поля ввода #419366


#0 by ic-kat
Есть свойство поля ввода: длина, но она либо устанавливается жестко, либо вообще не ставится. а нужно, чтобы в зависимости от выполнения некоторых условий накладывалось определенное ограничение на длину. например, если условие выполняется, то максимальная длина поля ввода = 50, если не выполняется, то 30. Есть такая возможность? нашла свойство max длина, но она действует, если типа поля число, а у меня строка.
#1 by Нуф-Нуф
сделай два поля на форме и показывай их в зависимости от условий
#2 by ic-kat
все не так просто, условие меняется в зависимости от того, что вводится в поле ввода.
#3 by skunk
если ты научилась отслеживать ввод в поле ввода, что мешает при соблюдении условий просто не давать вводить 31 символ?
#4 by ic-kat
нет, пока не придумала, как отследить... есть какие-то идеи?
#5 by Нуф-Нуф
приведи пример в каком случае 50 а в каком 30, может и задачу по другому решить можно
#6 by skunk
ты тоже можешь перехватывать ввод?
#7 by ic-kat
это для отправки смс-ок, если латиница, то 50 символов, если хот один знак кириллицы, то ограничение 30.
#8 by ic-kat
не могу. событие при_изменении поля ввода срабатывает только при переходе на другой элемент (( а почему тоже? ты знаешь, как это можно сделать?
#9 by skunk
ставлю дайм, что никто тут не сможет
#10 by skunk
а кто смогет, не станет заморачиваться...
#11 by ic-kat
а если каким-то внештатными способами?
#12 by Shurjk
Обработчик автоподбор текста пробовала?
#13 by Shurjk
А что такое дайм?
#14 by ic-kat
пробовала, но он срабатывает только при паузе в наборе. и если не набираешь а вставляешь скопированный кусок текста, тоне реагирует
#15 by Shurjk
А может проще при окончании редактирования проверять текст, и обрезать его по условию при это выдавая соответствующее сообщение...
#16 by Rie
А почему бы не по ОкончаниеВводаТекста не проверять длину?
#17 by Kolyasik
Лев Лев НЕ?
#18 by ic-kat
, это самое простое с точки зрения разработки, но смотрится корявенько. было бы красившее, если бы на этапе ввода проверялось количество и еще лучше чтоб после ввода каждого символа показывалось в отдельном окне количество введенных. но походу это нереально.
#19 by Rie
А так: ЭлементыФормы.ПолеВвода1.ОграничениеТипа = Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки);
#20 by Shurjk
Гораздо корявей будет смотреться какая ниббудь прикрученная ВК... которая будет чего то отлавливать тормозить загружаться и долго не выгружаться, которую надо откуда то подгружать ее обязательно у кого то из клиентов не окажется и у него встанет работа из-за появившейся ошибки... И все ради чего - ради красоты которая по большему счету не нужна...
#21 by ic-kat
заказчикам этого не объяснить ( щас посмотрю, к чему это приведет...
#22 by skunk
Дайм (англ. dime) — это монета достоинством в 10 центов, или одну десятую доллара США. Дайм является самой маленькой (как по толщине, так и по диаметру) из всех монет, выпускаемых в настоящий момент в США.
#23 by skunk
вообще самое кошерное в данном случае рисовать свой активикс и размещать его на форме... а рулить стандартным тедитом 1С слишком геморойно
#24 by ic-kat
оно работает как ограничитель, но иногда введенную строку затирает, не могу понять почему...
#25 by Dryad
по использованию AxtivX в 1С, есть что почитать?
#26 by ic-kat
была мысля, что AxtivX надо задействовать... не знаю, как подступиться... что почитать можно по этой тематике? что посоветуете?
#27 by Dryad
Сама спрашиваю) Про сам активХ я читала, мне интересно как его в 1с использовать...
#28 by Rie
В 8.1 - просто положить на форму. А дальше использовать как "родной" элемент управления. Или что именно интересует?
#29 by Dryad
что значит "просто положить"?
#30 by Rie
Меню "Форма" - "Вставить ActiveX". Если вопрос в том, как создать свой ActiveX - то это уже не вопрос по 1С. На 1С создать ActiveX не получится. А в другой среде программирования - встречный вопрос: а что именно используешь?
#31 by ic-kat
как положить понятно, а какой из них подойдет?
#32 by ic-kat
а если в VB?
#33 by Rie
Из распространённых - вряд ли какой подойдёт. skunk в правильно посоветовал свой рисовать.
#34 by skunk
пиши на виби
#35 by ic-kat
и ничего писать не пришлось, есть в 1С подходящий ActiveX который и добавление символа отсекает и меняет по условиям максимальное значение длины строки.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С