Динамический подсчет количества символов в строке
Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
Здравствуйте. Стоит задача Динамически подсчитывать количества символов с строке,
1)Пробовал Обработкой ожидания formEx но при срабатывании обработки выделается весь вводимый текст, и перезаписывается. Может я что то делаю не так?
2)слышать про TextBox из АктивИКС тоже можно такое реализовать, но ни где не нашел как его создать , сто писать в строке АктивИКС.СоздатьЭУ("????"); пробовал "microsoft forms 2.0 object library " , "MSForms"
пишет "Создание элемента управления MSForms.TextBox не удалось". Помогите кто сталкиваться с АктивИкс
1)Пробовал Обработкой ожидания formEx но при срабатывании обработки выделается весь вводимый текст, и перезаписывается. Может я что то делаю не так?
2)слышать про TextBox из АктивИКС тоже можно такое реализовать, но ни где не нашел как его создать , сто писать в строке АктивИКС.СоздатьЭУ("????"); пробовал "microsoft forms 2.0 object library " , "MSForms"
пишет "Создание элемента управления MSForms.TextBox не удалось". Помогите кто сталкиваться с АктивИкс
По теме из базы знаний
Найденные решения
(22) dvk09, Спасибо большое именно то, что искал ! доделал немного добавил одну функция , а то в этом варианте при удалении символов, подсчет не обновлялся. доделал работает!.
А самое обидное что я пробовал создать объект textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox") , а надо было textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox.1"); Будем знать.
А самое обидное что я пробовал создать объект textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox") , а надо было textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox.1"); Будем знать.
Прикрепленные файлы:
TextBox_Доп.ert
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(11) tandy82, (12) MirrorDen, Проблема в том, что пока поле не потеряет фокус, 1С не вернёт какие-либо изменения с нём. Сами проверьте, если, например ловить ПриНажатииКнопкиКлавиатуры и выводить Сообщить значение реквизита формы, то его значение не будет меняться, пока поле ввода не потеряет фокус.
Можно попробовать (сам не проверял) ловить нажатия кнопок, при нажатии вызывать закрытие формы Форма.Закрыть(0), а ПриЗакрытии делать СтатусВозврата(0). Но, боюсь, положение курсора не будет сохраняться.
Тут, скорее всего, нужно действовать через системные вызовы windows, что бы получить значение в поле ввода. Если встроенные средства безопасности не обломают такое подозрительное действие - из одного приложения получить текст в поле ввода в другом приложении.
Можно попробовать (сам не проверял) ловить нажатия кнопок, при нажатии вызывать закрытие формы Форма.Закрыть(0), а ПриЗакрытии делать СтатусВозврата(0). Но, боюсь, положение курсора не будет сохраняться.
Тут, скорее всего, нужно действовать через системные вызовы windows, что бы получить значение в поле ввода. Если встроенные средства безопасности не обломают такое подозрительное действие - из одного приложения получить текст в поле ввода в другом приложении.
Просто интересно, а для чего сие требуется? Почему нельзя подсчитать символы после их ввода или ограничить ввод нужным количеством символов?
В крайнем случае, можно вводить симовлы с псевдо-виртуальной клавиатуры, тогда запросто отследить каждое нажатие.
В крайнем случае, можно вводить симовлы с псевдо-виртуальной клавиатуры, тогда запросто отследить каждое нажатие.
(8) Vlan,
Просто не понимаю, зачем заказчики такие вещи хотят?
Например им мало того, что они видят что им звонили, кто именно звонил... Им надо, чтобы это выглядело красочно)) А то на упущенные вызовы смотреть скучно)))
Просто интересно, а для чего сие требуется?
Просто не понимаю, зачем заказчики такие вещи хотят?
Например им мало того, что они видят что им звонили, кто именно звонил... Им надо, чтобы это выглядело красочно)) А то на упущенные вызовы смотреть скучно)))
(22) dvk09, Спасибо большое именно то, что искал ! доделал немного добавил одну функция , а то в этом варианте при удалении символов, подсчет не обновлялся. доделал работает!.
А самое обидное что я пробовал создать объект textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox") , а надо было textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox.1"); Будем знать.
А самое обидное что я пробовал создать объект textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox") , а надо было textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox.1"); Будем знать.
Прикрепленные файлы:
TextBox_Доп.ert
Вот, немного скорректировал, чтобы работало нормально.
Нашел в том же месте, следующее сообщение за ЁПРСТом))
В общем ничего сам не сочинял.
Нашел в том же месте, следующее сообщение за ЁПРСТом))
В общем ничего сам не сочинял.
Прикрепленные файлы:
TextBox_Доп.ert
Для версии 8.1.3.13 нашел еще способ.
Проверял для реквизита объекта (Форма элемента справочника)
Проверял для реквизита объекта (Форма элемента справочника)
&НаКлиенте
Процедура ОсновнойТекстИзменениеТекстаРедактирования(Элемент, Текст, СтандартнаяОбработка)
Объект.ШаблонТекстаЯдро = Текст;
ДлинаТекста = СтрДлина(Текст);
УстановитьЗаголовокДекорации(ДлинаТекста);
КонецПроцедуры
&НаКлиенте
Функция УстановитьЗаголовокДекорации(ДлинаТекста = 0)
ОсталосьЗнаков = 1200-ДлинаТекста;
ЗаголовокДекорации = СтрШаблон("Рекомендованное число символов: 1200; Осталось %1", Строка(ОсталосьЗнаков));
Элементы.ДекорацияЗаголовокСимволов.Заголовок = ЗаголовокДекорации;
КонецФункции
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот