Как разокрасить строку таблицы знчений 1С 8.1

1. ROM_1C 691 26.10.09 02:20 Сейчас в теме
Как можно програмно изменить цвет и шрифт таблицы значений, если строка уже написана в ТЗ и не изменяеться. Событие приВыводе строки не совсем подходит, Тоисть как програмно можно задать раскраску например, строки 2, 4,5,7...
Всем заранье благодарен.
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Душелов 4017 26.10.09 07:59 Сейчас в теме
А чем ПриВыводеСтроки не подходит?
3. magus 26.10.09 10:19 Сейчас в теме
Оформление строк можно менять еще в методе ПриПолученииДанных().
4. alexk-is 6534 26.10.09 14:07 Сейчас в теме
Для того чтобы точно знать какие строки должны быть раскрашены, необходимо соответствующим образом подготовить исходные данные. Т.е. раскрашиваемые строки должны зависеть от отображаемых данных и при изменении порядка вывода строк способ их отображения не должен меняться. Тогда при отображении строк всегда будет получаться ожидаемый результат.
Процедура ДокументСписокПриПолученииДанных(Элемент, ОформленияСтрок)
Для каждого ОформлениеСтроки Из ОформленияСтрок Цикл
Если ОформлениеСтроки.ДанныеСтроки.РаскраситьСтроку Тогда
ОформлениеСтроки.ЦветФона = Новый Цвет(255, 251, 240);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
5. ROM_1C 691 26.10.09 21:20 Сейчас в теме
Все это конрешно хорошо, но:
При выводе строкы
 Процедура ТЗ11ПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
	 если ЭлементыФормы.ТЗ11.ВыделенныеСтроки.Содержит(ДанныеСтроки) =Истина Тогда 
		 ОформлениеСтроки.Цветтекста = Новый цвет (255,0,0);
		 ОформлениеСтроки.Шрифт = Новый Шрифт (,,Истина);
	 Иначе 
		 ОформлениеСтроки.Цветтекста = Новый цвет (0,0,0);
		 ОформлениеСтроки.Шрифт = Новый Шрифт (,,);
		 
	 КонецЕсли;
	 
 КонецПроцедуры
Показать

А вот процедура кнопкы с формы..

Процедура Кнопка2НажатиеПробела(Элемент)
	таб =ЭлементыФормы.ТЗ11;
	строкаТЗ =     таб.Значение.Получить(?(таб.значение.Количество()<=НомерАктивСтр+1,таб.значение.Количество()-1,НомерАктивСтр+1));
	
	таб.ВыделенныеСтроки.Добавить(строкаТЗ);
	НомерАктивСтр=НомерАктивСтр+1;
	
КонецПроцедуры
Показать

- при нажатии пробела добавляеться следующая строка к выделеным...

Нужно, чтобы эти строки выделялись какимто цветом ну и жырным шрифтом :)

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

Процедура ТЗ11ПриАктивизацииСтроки(Элемент)
	таб =ЭлементыФормы.ТЗ11;
	НомерАктивСтр= таб.значение.индекс(таб.ТекущаяСтрока);
КонецПроцедуры


Ну вот, все сделано кроме последнего. При активации строки выделения пропадають, но цвет не меняеться на тот, которой вказан во второй части ЕСЛИ процедуры Процедура ТЗ11ПриВыводеСтроки
Вопрос актуален... Если что-то непонятно изложил - не обежайте, спрашивайте ;)
6. poppy 26.10.09 22:00 Сейчас в теме
(5) Может признак выделения строки хранить в отдельной колонке ТЗ, но не в атрибуте ВыделенныеСтроки?
7. ROM_1C 691 26.10.09 22:13 Сейчас в теме
(6) возможно... но как тогда приАктивацииСтроки снять окраску строки?
Она то снемаеться, но только тогда, когда прокрутиться прокрутка таблицы...
8. poppy 26.10.09 22:59 Сейчас в теме
(7) Почему ПриАктивацииСтроки?
Опиши подробно чего желаешь? При каком событии отмечать, когда снимать отметку?
9. ROM_1C 691 26.10.09 23:23 Сейчас в теме
Хочу пробелом видеделять строки от текущей строки до самого низу.
При этом красным и жирным выделяються эти строки. При активации строки мышой (не пробелом) - все выделения снимаються и раскраска строк тоже....
10. poppy 26.10.09 23:31 Сейчас в теме
(9) Дык может не стоит использовать ПриАктивации...?
(7) Снимать окраску, вероятно, нужно в Кнопка2НажатиеПробела(). Или нет?
11. ROM_1C 691 26.10.09 23:42 Сейчас в теме
а как если не при активации строки ?
Кнопка2НажатиеПробела() - предложите алгоритм в котором можно опредилить виделять и роскоасить строки или убрать все...
12. poppy 26.10.09 23:52 Сейчас в теме
У тебя процедура Кнопка2НажатиеПробела() на какое событие повешена?
13. ROM_1C 691 26.10.09 23:57 Сейчас в теме
При нажатии пробела.. и все..
14. alexk-is 6534 27.10.09 22:03 Сейчас в теме
Нужно хранить список выделеных строк, а при выводе строки проверять - есть ли она в списке. Ну, и если есть, то раскрашивать. При нажатии пробела изменять список выделеных строк. Добавлять выбранную строку в список выбранных строк (или убирать). При нажатии кнопки мыши список выделенных строк должен очищаться, а выведенные строки на экране перерисовываться.

Список выделеных строк можно хранить в виде массива или в дополнительной колонке источника данных.
15. ROM_1C 691 27.10.09 23:58 Сейчас в теме
Идея.... Чтобы снять заскраску заполнять таблицу еще раз.... Спасибо всем. И еще вопрос..
Как понял, на кнопку можно установить любое сочетание клавиш, но нажиматся они будут только тогда когда кнопка видимма... а если спрятать, то - нет. как можно выйти с данной ситуации.?
Оставьте свое сообщение

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