Имя: Пароль:
1C
1С v8
Тусклую галку в некоторых строках
0 picom
 
07.02.12
12:59
В Таб части документа есть колонка с флажкоми. 8,2
..
Пользователь отмечает галками что хочет, но некоторые позиции надо запретить помечать.
Они должны светиться как тусклые и уже помеченные.
...
Шрифт текста строки я поменял и поставил запрет на изменение флажка, а как сам флажок сделать тусклым и помеченным в избранных строках?
1 Wobland
 
07.02.12
13:00
Доступность убирал?
2 picom
 
07.02.12
13:01
А разве можно сделать доступность некоторым только строкам?
3 Reset
 
07.02.12
13:01
Форма управляемая или обычная?
4 Maxus43
 
07.02.12
13:01
(2) при выводе строки можно, оформление строк
5 Maxus43
 
07.02.12
13:02
в толстом клиенте
6 PVV65
 
07.02.12
13:12
Процедура ПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
  Если <> Тогда
    ОформлениеСтроки.Ячейки.<ИмяКолонки>.ОтображатьФлажок = Истина;
    ЭлементыФормы.<ТП>.Колонки.<ИмяКолонки>.ТриСостоянияФлажка = Истина;
    ОформлениеСтроки.Ячейки.<ИмяКолонки>.Флажок = 2;
    ОформлениеСтроки.Ячейки.<ИмяКолонки>.ТолькоПросмотр = Истина;
  КонецЕсли;
КонецПроцедуры
7 picom
 
07.02.12
13:22
(6) круто, но крышу сносит
другие ячейки пострадали
8 picom
 
07.02.12
13:40
(6) этот код блокирует не только нужную строку, а всю колонку
9 hhhh
 
07.02.12
13:43
(8) ну тогда ПриАктивизацииСтроки() делайте.
10 acsent
 
07.02.12
13:44
(8) врешь
11 picom
 
07.02.12
13:47
(10) Это портит
ЭлементыФормы.<ТП>.Колонки.<ИмяКолонки>.ТриСостоянияФлажка = Истина;
12 PVV65
 
07.02.12
14:03
(11) Это не портит. В (6) показано, как отобразить третье состояние флажка и запретить его изменять. Что бы другие ячейки работали по другому надо дописать.

Процедура ПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
  Если <> Тогда
    ОформлениеСтроки.Ячейки.<ИмяКолонки>.ОтображатьФлажок = Истина;
    ЭлементыФормы.<ТП>.Колонки.<ИмяКолонки>.ТриСостоянияФлажка = Истина;
    ОформлениеСтроки.Ячейки.<ИмяКолонки>.Флажок = 2;
    ОформлениеСтроки.Ячейки.<ИмяКолонки>.ТолькоПросмотр = Истина;
  Иначе
    ОформлениеСтроки.Ячейки.<ИмяКолонки>.ОтображатьФлажок = Истина;
   
    Если <надо отобразить флажок?> Тогда
       ОформлениеСтроки.Ячейки.<ИмяКолонки>.Флажок = Истина;
    Иначе
       ОформлениеСтроки.Ячейки.<ИмяКолонки>.Флажок = Ложь;
    КонецЕсли;
  КонецЕсли;
КонецПроцедуры
13 PVV65
 
07.02.12
14:05
+(12) Кроме того, скорее всего, потребуется обработчик события ТП "ПриИзмененииФлажка" для запоминания состояний флажков (смотря где хранится информация).
14 picom
 
07.02.12
16:14
(13) прав, (12) убивает данные, был флажок или нет (
15 PVV65
 
07.02.12
16:17
(14) Какие данные "убивает"? Давай более подробно. Где хранится информация о состоянии флажков?