Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 06:33

Подсветка ячеек которые содержат символы в поле ввода (внешняя обработка, обычная форма, приложение)

Автор You_0, 31 янв 2023, 09:49

0 Пользователей и 1 гость просматривают эту тему.

You_0

Ученик.

Имеется внешняя обработка в обычном приложении (обычная форма)
 
внешняя обработка содержит:

1. Табличная часть - ТабличнаяЧасть1
2. Форма - форма
3. Реквизит - ПолеПоискаСимволов
4. Реквизит табличной части  - Фрукты

Необходимо НАПИСАТЬ КРАТКИЙ АЛГОРИТМ ДЕЙСТВИЙ (или код в ответе), чтобы при запуске обработки а после
при вбивании в поле(ПолеПоискаСимволов) автоматически подсвечивалась (светложелтым)
ячейка которая содержит буквы или (последовательность букв).

Как на картинке:

Пример.png

Вот код который у меня в модуле (то что закомментировано это были мои попытки реализации):


Процедура КнопкаВыполнитьНажатие(Кнопка)
   
ф = новый массив;
ф.Добавить("Яблоки");
ф.Добавить("Груши");
ф.Добавить("Апельсины");
ф.Добавить("Лимоны");
ф.Добавить("Абрикосы");

Для Н = 0 ПО ф.ВГраница()  Цикл
   Новая_строка = табличнаячасть1.Добавить();
   Новая_строка.фрукты = ф[Н];
конецЦикла;

//ПолеПоискаСимволов

   //Для Каждого ОформлениеСтроки Из Новая_строка.фрукты Цикл
   //    Для Каждого Ячейка Из ОформлениеСтроки.Ячейки Цикл
   //       
   //        Если Найти(Ячейка.Текст, ПолеПоискаСимволов)<>0 и ПолеПоискаСимволов <> "" Тогда
   //            Ячейка.ЦветФона = WebЦвета.СветлоЖелтый;
   //      КонецЕсли;
   //      
   //   КонецЦикла;   
   //КонецЦикла;

КонецПроцедуры


Процедура ОчиститьТаблицуНажатие(Элемент)
   
табличнаячасть1.очистить();

КонецПроцедуры

Можно ли это реализовать?

antoneus


You_0

antoneus, Нет табличной части т.к я забыл указать этот момент. В этот раз я все подробно описал.

antoneus

Да без разницы, что отображает табличное поле на форме - табличную часть или таблицу значений, т.к. работа идет с элементом формы.

You_0

Также я не указал (в первой теме), что последовательность символов тоже должна искаться: например если я вбиваю в поиск "ки" то должны подсвечиваться цветом ячейка содержащая слово "Яблоки". Вы же реализовали идентичный поиск.

antoneus

Вот, переделал обработку из предыдущего поста под табличную часть. Поменял только код, отвечающий за заполнение, в коде, отвечающем за покраску, не поменял ни буквы.

antoneus

Цитата: You_0 от 31 янв 2023, 10:27Также я не указал (в первой теме), что последовательность символов тоже должна искаться: например если я вбиваю в поиск "ки" то должны подсвечиваться цветом ячейка содержащая слово "Яблоки". Вы же реализовали идентичный поиск.

вы обработку запускали вообще?

You_0

antoneus, Запускал и у меня что и в последнем что и в предпоследнем выдаёт следующее:
Скриншот 31-01-2023 133202.jpg

antoneus

Ну значит, в вашей версии 1с такого цвета штатно нет, поменяйте строку (19)

ОформлениеСтроки.Ячейки.Наименование.ЦветФона = ЦветаСтиля.ЦветНавигации;
на

ОформлениеСтроки.Ячейки.Наименование.ЦветФона = WebЦвета.СветлоЖелтый;
ну или какой там

You_0

antoneus, Большое спасибо, я извиняюсь если ввел вас в заблуждение в первой теме.
Как на ваш взгляд эффективнее всего обучаться в 1С?
Курсы, книги, Решение задач на работе, Помощь на форуме, что больше всего на ваш взгляд оказывается более полезным?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск