Компонента выбора цвета в 1С 8.х

Компонента позволяет организовать диалог выбора цвета (как в Paint) в 1С 8.x и возвращает выбранный цвет в виде RGB.

Компонента позволяет организовать диалог выбора цвета (как в Paint) в 1С 8.x и возвращает выбранный цвет в виде RGB.

Пример использования компоненты

 

ПрогИД= "ColorDialogExt.MyColorDialogExt";
Если ПодключитьВнешнююКомпоненту(ПрогИД) Тогда
Диалог=Новый COMОбъект(ПрогИД);
Р=10; Г=125; Б=200;
Диалог.SetRGB(Р,Г,Б);
Если Диалог.OpenDialog() Тогда
Р=Диалог.R;
Г=Диалог.G;
Б=Диалог.B;
КонецЕсли;
Иначе
Сообщить("Отсутсвует библиотека выбора цвета!");
КонецЕсли;

Для получения значения цвета в формате #FC8020 можно воспользоваться свойством ColorHTML, а для установки начального значения цвета в указанном формате можно воспользоваться функцией SetColorHTML.

Для использования компоненты, разархивируйте архив в корень диска C. В появившейся папке Components запустите файл ColorDialogExt.reg

5 Comments

  1. CheBurator

    А вернуть сразу в виде FFCC66 или в 16-ричном выражении для каждого цвета…?

    Reply
  2. premierex

    Для использования компоненты, разархивируйте архив в корень диска C

    А если не в корень разархивировать, работать не будет? )))

    Эта рекомендация — дань привычке или действительно необходимое условие?

    А общем и целом, довольно неплохая замена «скупому» типовому Диалогу выбора цвета.

    Reply
  3. premierex

    Кстати, автор, исправили бы грамматические ошибки в публикации. Без них читать как-то проще.

    Для полочения значения цвета в формате #FC8020 можно воспользоваться свойством ColorHTML, а для установки начального значения цвета в указанном формате модно воспользоваться функцией SetColorHTML..

    Reply
  4. mattol

    (2) premier, можно и не в корень разархивировать, тогда нужно немного будет подредактировать файл реестра:

    в строке «CodeBase»=»file:///c:/Components/ColorDialogExt.dll» нужно будет указать путь к ColorDialogExt.dll

    Reply
  5. pro1c@inbox.ru

    что то не приходит в голову, а зачем это надо?

    направьте на мысль, пожалуйста.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *