Имя: Пароль:
1C
1С v8
Как дать возможность пользователю назначать цвет ?
0 r1000
 
09.12.14
19:07
Есть задачка печатать строки печатной формы по условию разными цветами. Хочется дать возможность пользователю выбрать цвет из палитры цветов, пользователь выбирает - программа переводит этот цвет в строку вида "255,255,255" для определенного условия(сохраняет этот цвет в какой нить специальный регистр сведений), а затем это можно использовать при печати.
Как сделать интерфейс выбора цвета из палитры, чтобы при выборе как то перехватить его ?
Спасибо.
1 ДенисЧ
 
09.12.14
19:12
ДиалогВыбораЦвета  не?
2 r1000
 
09.12.14
19:14
Попробую. Спасибо.
3 r1000
 
09.12.14
20:12
Пытаюсь, но как сделать вид абсолютным ? Нагуглить немогу...
делаю так:
    Цвет=Новый Цвет;
    Цвет.Вид=ВидЦвета.Абсолютный;
    
    Диалог = Новый ДиалогВыбораЦвета;
    Если Диалог.Выбрать() Тогда
        Диалог.Цвет=Цвет;

    КонецЕсли;
{РегистрСведений.ЦветаСкладскихРядов.Форма.ФормаЗаписи.Форма(5)}: Значение не является значением объектного типа (Вид)
    Цвет.Вид=ВидЦвета.Абсолютный;
4 r1000
 
09.12.14
20:12
т.е. понятно что только чтение там...
5 Hans
 
09.12.14
20:21
У справочника есть реквизит "Цвет" с типом хранилище значения
Есть так же поле выбора "Цвет" - не связанное с реквизитом, т.к. с хранилищем нельзя.

Процедура ЦветНачалоВыбора(Элемент, СтандартнаяОбработка)
    // Вставить содержимое обработчика.
    СтандартнаяОбработка = ЛОЖЬ;
    
    Диалог = Новый ДиалогВыбораЦвета;

    Если Диалог.Выбрать() Тогда
        ЦветФона = Диалог.Цвет;
        Цвет = Новый ХранилищеЗначения(ЦветФона);
    КонецЕсли;
    
    ЗаполнитьЦветПоля();
    
КонецПроцедуры

Процедура ЗаполнитьЦветПоля()
    
    ЦветФона = Цвет.Получить();
    
    Если ТипЗнч(ЦветФона) = Тип("Цвет") Тогда
        ЭлементыФормы.Цвет.ЦветФонаПоля = ЦветФона;
    Иначе
        ЭлементыФормы.Цвет.ЦветФонаПоля = Новый Цвет();
    КонецЕсли;
    
КонецПроцедуры

Процедура ПриОткрытии()
    // Вставить содержимое обработчика.
    
    ЗаполнитьЦветПоля();
    


КонецПроцедуры
6 r1000
 
09.12.14
20:29
ппц. Спасибо.
А на ржб это никак не разложить ?