Динамический подсчет количества символов в строке

Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
1. ToJIuK 24.08.16 16:10 Сейчас в теме
Здравствуйте. Стоит задача Динамически подсчитывать количества символов с строке,
1)Пробовал Обработкой ожидания formEx но при срабатывании обработки выделается весь вводимый текст, и перезаписывается. Может я что то делаю не так?
2)слышать про TextBox из АктивИКС тоже можно такое реализовать, но ни где не нашел как его создать , сто писать в строке АктивИКС.СоздатьЭУ("????"); пробовал "microsoft forms 2.0 object library " , "MSForms"
пишет "Создание элемента управления MSForms.TextBox не удалось". Помогите кто сталкиваться с АктивИкс
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
23. ToJIuK 27.09.16 20:04 Сейчас в теме
(22) dvk09, Спасибо большое именно то, что искал ! доделал немного добавил одну функция , а то в этом варианте при удалении символов, подсчет не обновлялся. доделал работает!.
А самое обидное что я пробовал создать объект textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox") , а надо было textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox.1"); Будем знать.
Прикрепленные файлы:
TextBox_Доп.ert
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. vcv 89 24.08.16 19:02 Сейчас в теме
(1) ToJIuK, Может ПриНажатииКнопкиКлавиатуры из FormEx ?
3. ToJIuK 24.08.16 20:53 Сейчас в теме
(2) vcv, Это можно попробовать , Но все таки хочется textBox Победить ).
4. dvk09 2 25.08.16 02:50 Сейчас в теме
(3) ToJIuK, Победишь, отпишись. Тоже очень интересно...
11. tandy82 60 12.09.16 10:59 Сейчас в теме
(1)
как написал vcv(2)
ПриНажатииКнопкиКлавиатуры из FormEx (1c++) самое очевидное решение вашей задачи
13. vcv 89 18.09.16 17:32 Сейчас в теме
(11) tandy82, (12) MirrorDen, Проблема в том, что пока поле не потеряет фокус, 1С не вернёт какие-либо изменения с нём. Сами проверьте, если, например ловить ПриНажатииКнопкиКлавиатуры и выводить Сообщить значение реквизита формы, то его значение не будет меняться, пока поле ввода не потеряет фокус.
Можно попробовать (сам не проверял) ловить нажатия кнопок, при нажатии вызывать закрытие формы Форма.Закрыть(0), а ПриЗакрытии делать СтатусВозврата(0). Но, боюсь, положение курсора не будет сохраняться.
Тут, скорее всего, нужно действовать через системные вызовы windows, что бы получить значение в поле ввода. Если встроенные средства безопасности не обломают такое подозрительное действие - из одного приложения получить текст в поле ввода в другом приложении.
5. ToJIuK 26.08.16 10:46 Сейчас в теме
Нет у нас программистов, которые с АктивИкс имели дело? Нужно помощь
6. ra9000 8 02.09.16 17:30 Сейчас в теме
Смотря куда считать символы:
Можно текстовое поле поставить с обновлением на форму
Из него вызывать функцию
( на пусть считает количество символов)
7. dvk09 2 05.09.16 03:03 Сейчас в теме
(6) ra9000,
текстовое поле поставить с обновлением на форму
Это как? Пока на Enter не нажмешь, значение не получишь... А нужно раньше.
8. Vlan 36 05.09.16 10:27 Сейчас в теме
Просто интересно, а для чего сие требуется? Почему нельзя подсчитать символы после их ввода или ограничить ввод нужным количеством символов?
В крайнем случае, можно вводить симовлы с псевдо-виртуальной клавиатуры, тогда запросто отследить каждое нажатие.
9. ToJIuK 06.09.16 08:39 Сейчас в теме
(8) Vlan, Необходимо для динамического подсчета количества символом , соответственно СМС, при отправке, ограничивать не надо просто нужно количество , набираешь текст, а он подсчитывает количество символов (определяет количество смс).
10. dvk09 2 06.09.16 10:54 Сейчас в теме
(8) Vlan,
Просто интересно, а для чего сие требуется?

Просто не понимаю, зачем заказчики такие вещи хотят?

Например им мало того, что они видят что им звонили, кто именно звонил... Им надо, чтобы это выглядело красочно)) А то на упущенные вызовы смотреть скучно)))
12. MirrorDen 18.09.16 17:13 Сейчас в теме
А не проще ли просто повесть обычную функцию на форму, и в ней просчитывать количество символов?
14. jj_mail 19.09.16 12:49 Сейчас в теме
ПриНажатииКнопкиКлавиатуры действительно меняться не будет, а вот ПриОтжатииКнопкиКлавиатуры очень даже измениться
15. dvk09 2 27.09.16 03:22 Сейчас в теме
(14) не работает.
Прикрепленные файлы:
тест.ert
16. ToJIuK 27.09.16 08:51 Сейчас в теме
(15) dvk09, Попробовал не работает. Показывает только, то что уже введено. То есть таже проблема.
19. dvk09 2 27.09.16 11:05 Сейчас в теме
(16) Это я на (14) ответил. А то так заявлено...)))
А что не работает, я знал.
17. v3rter 27.09.16 09:10 Сейчас в теме
А ОбработкаОжидания 1-2 раза в секунду?
18. vcv 89 27.09.16 11:02 Сейчас в теме
(17) v3rter, Читайте (13) "Проблема в том, что пока поле не потеряет фокус, 1С не вернёт какие-либо изменения с нём."
20. dvk09 2 27.09.16 11:45 Сейчас в теме
Вот это должно работать.
Нарыл на форуме 1cpp.
Прикрепленные файлы:
TextBox.ert
21. dvk09 2 27.09.16 11:47 Сейчас в теме
Только я тут долго не думал. Символы добавляются в конец текста.
Там есть намек, куда дальше рыть. Но у меня рабочий день закончился.
Я домой. Доведешь до ума, брось в этой ветке.
22. dvk09 2 27.09.16 11:50 Сейчас в теме
Кстати, только сейчас заметил, что это пример Ёпрста)))
Если что не так. Прошу сильно не пинать))
23. ToJIuK 27.09.16 20:04 Сейчас в теме
(22) dvk09, Спасибо большое именно то, что искал ! доделал немного добавил одну функция , а то в этом варианте при удалении символов, подсчет не обновлялся. доделал работает!.
А самое обидное что я пробовал создать объект textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox") , а надо было textBox1=АтрФормы.СоздатьЭУ("Forms.TextBox.1"); Будем знать.
Прикрепленные файлы:
TextBox_Доп.ert
24. dvk09 2 28.09.16 02:49 Сейчас в теме
Вот, немного скорректировал, чтобы работало нормально.
Нашел в том же месте, следующее сообщение за ЁПРСТом))

В общем ничего сам не сочинял.
Прикрепленные файлы:
TextBox_Доп.ert
25. user999015 01.02.19 22:36 Сейчас в теме
Для версии 8.1.3.13 нашел еще способ.

Проверял для реквизита объекта (Форма элемента справочника)

&НаКлиенте
Процедура ОсновнойТекстИзменениеТекстаРедактирования(Элемент, Текст, СтандартнаяОбработка)
	Объект.ШаблонТекстаЯдро = Текст;
	ДлинаТекста = СтрДлина(Текст);
	УстановитьЗаголовокДекорации(ДлинаТекста);
КонецПроцедуры

&НаКлиенте
Функция УстановитьЗаголовокДекорации(ДлинаТекста = 0)
	ОсталосьЗнаков = 1200-ДлинаТекста;
	ЗаголовокДекорации = СтрШаблон("Рекомендованное число символов: 1200; Осталось %1", Строка(ОсталосьЗнаков));
	Элементы.ДекорацияЗаголовокСимволов.Заголовок = ЗаголовокДекорации;
КонецФункции
Показать
26. user856012 13 01.02.19 22:45 Сейчас в теме
(25)
Для версии 8.1.3.13 нашел еще способ.
А ничего, что тема жила в разделе "Платформа 1С v7.7 (все механизмы)"?

Так что вы вашу попытку сделать искусственное дыхание покойнице делаете... гм... не с той стороны.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот