|
Как выделить цветом строку табличного поля при активизации ячейки | ☑ | ||
---|---|---|---|---|
0
go1c
13.06.12
✎
20:52
|
Подскажите пожалуйста как можно реализовать следующий "бантик":
Есть табличное поле обычной формы, РежимВыделенияСтроки - Ячейка, как сделать так чтобы при активации любой ячейки выделялась каким-то цветом вся строка (реализовано на уровне платформы в управляемых формах). Менять РежимВыделенияСтроки на Строка не вариант так как при копировании в буфер значения колонки копируется вся строка. |
|||
1
oleg_prg
13.06.12
✎
21:55
|
Первое что пришло в голову - это ввести скрытое поле в таблицу.
При активизации строки ставить туда некое значение - например цифру 1 Затем делать по этому признаку раскраску, код раскраски ниже ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить(); ОформляемоеПоле = ЭлементУсловногоОформления.Поля.Элементы.Добавить(); ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных("ДанныеТЗПоле2"); ЭлементОтбора = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДанныеТЗ.Поле2"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Содержит; ЭлементОтбора.ПравоеЗначение = "1"; ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Желтый); Может как-нибудь вот так... |
|||
2
oleg_prg
13.06.12
✎
21:56
|
Естественно при смене строки обнулять значение скрытого поля
|
|||
3
Vladal
13.06.12
✎
22:34
|
Некрасиво это — полистал строки, а тебе модифицированность формы.
Надо в ПриОтображенииСтроки или ОформленииСтроки перебирать коллекцию колонок и каждой колонке текущей строки менять цвет. Пример дать н могу, пишу с телефона. |
|||
4
DrShad
13.06.12
✎
22:38
|
(0) я что-то так и не понял у тебя то какой режим?
|
|||
5
go1c
13.06.12
✎
22:57
|
(4)у меня обычные формы. в управляемых отрабатывает по умолчанию (ячейка выделяется синим, а строка голубоватым), нужно сделать аналогично.
|
|||
6
DrShad
13.06.12
✎
23:01
|
текущаястрока?
|
|||
7
go1c
14.06.12
✎
00:10
|
||||
8
Vladal
14.06.12
✎
09:55
|
(7) т.е. ты уже нашел ответ?
|
|||
9
go1c
14.06.12
✎
10:34
|
(8)да, спасибо всем за помощь. сделал так:
Процедура РаботыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Если Элемент.ТекущаяСтрока = ДанныеСтроки Тогда ОформлениеСтроки.ЦветФона = WebЦвета.Розовый; КонеЦЕсли; КонецПроцедуры Процедура РаботыПриАктивизацииСтроки(Элемент) Элемент.ОбновитьСтроки(); КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |