|
Цвет строки против цвета колонки: кто главнее | ☑ | ||
---|---|---|---|---|
0
Антиквар
19.09.13
✎
14:15
|
У меня есть две обработки, на форме каждой из них табличное поле. Для удобства восприятия у табличного поля чередуется цвет колонок (через одну подкрашены слегка серым).
По некоторым условиям необходимо всю строку окрашивать в какой-либо цвет. Дак вот в первой обработке окрашенные строки полностью имеют нужный цвет, а во второй обработке не могу этого добиться, почему-то цвет колонок перебивает цвет строки. Механизм окрашивания реализован одинаково в обоих обработках: цвет фона колонок задан в конфигураторе, а цвет строк в процедуре ПриВыводеСтроки(). Дак вот во втором случае, там где цвет колонок Авто (белый), цвет ячееек принимает нужный цвет строки, а в цветных колонках остается цвет колонки. Понятно что обработки у меня разные, но механизм окрашивания одинаков. Может ли от какого-то свойства табличного поля это зависеть? Или вообще куда копать? |
|||
1
Heckfy
19.09.13
✎
14:19
|
По моему, кто последний, тот и папа.
То есть, чему последнему цвет устанавливаешь, тот и будет главный. :) |
|||
2
ИС-2
naïve
19.09.13
✎
14:23
|
может событие при выводе строки не выполнятся?
|
|||
3
Фокусник
19.09.13
✎
14:27
|
(0) ИМХО, цвет строки - это "нижний слой", а цвет ячейки - это "верхний слой", поэтому какой цвет ячейки задан, такой цвет и будет, на важно какой "цвет строки" под ним.
Для полной закраски строки нужным цветом можно закрашивать каждую ячейку этой строки. |
|||
4
Антиквар
19.09.13
✎
14:29
|
(1) цвет колонкам установлен в конфигураторе, а строкам - в ПриВыводеСтроки(), т.е. строки последние. Даже если предположить, что сначала сработало ПриВыводеСтроки(), а потом окрасились колонки при открытии формы, то в процессе работы ПриВыводеСтроки() срабатыват ещё не раз и должно перекрыть.
(2) Выполняется. Ведь те ячейки, которые не относятся к окрашиваемым колонкам, окрашиваются в нужный цвет, заданный для строки по срабатыванию определенного условия. |
|||
5
Антиквар
19.09.13
✎
14:31
|
(3) Думал уже над тем, чтоб каждую ячейку закрашивать, но это неудобно и хочется понять причину. Ведь в первой обработке у меня такого нет.
Согласен, что ячейка имеет приоритет над строкой, но я задаю цвет колонке в конфигураторе, а не ячейке. И по идее программное задание цвета строки должно перекрыть заданный цвет колонки в конфигураторе. |
|||
6
Фокусник
19.09.13
✎
14:40
|
(5)
Цвет "колонок" Авто, это значит он не задан. Поэтому "сквозь него" и виден цвет строки, задаваемый программно. А в тех случаях, когда цвет ячейки задан (программно или в конфигураторе), он перекроет цвет строки.
Не важно как задан цвет, программно или в конфигураторе, важно что именно окрашено :) |
|||
7
cw014
19.09.13
✎
14:48
|
Насколько я помню, у табличного поля есть:
Чередование цветов строк ЧередованиеЦветовСтрок, UseAlternationRowColor |
|||
8
Антиквар
19.09.13
✎
15:01
|
(6) Ещё раз повторю, что в первой обработке окрашивается вся строка, т.е. от чего-то это зависит.
И цвет ячейки я не задаю, я задаю цвет клонки. (7) Есть такое свойство. Но мне не надо чередовать строки, цвет строки у меня задается в ПриВыводестроки() по определенному условию. Далеко не у всех строк. |
|||
9
Антиквар
19.09.13
✎
15:12
|
Вот кстати нашел в хелпе по 1С:
ОформлениеСтроки Объект для управления оформлением строки табличного поля. ЦветФона / BackColor Доступ: чтение и запись. Тип: Число. Описание: Определяет цвет фона всех ячеек строки. Приоритет выше, чем у свойства ЦветФона колонки табличного поля. Так что строка должна перебивать колонку. |
|||
10
RomaH
naïve
19.09.13
✎
15:27
|
давай выкладывай обработки - посмотрим
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |