Цвета упорядочены по оттенкам и подписаны.
Вариант для обычной и управляемой формы.
Обработка была разработана для быстрого и наглядного выбора конечным пользователем цветов кнопок меню. Используются именно web цвета 1c – проименованые цвета проще запомнить, чем цифровые коды.
Используются стандартные средства платформы — на формах рисуются кнопки выбора цвета с наименованием цвета и соответствующим фоном кнопки.
Количество строк кнопок можно настраивать в реквизите формы КоличествоСтрок при открытии.
Для использования в конфигурации можно либо встроить обработкой, либо общей формой.
Результатом модального вызова формы есть выбранный web цвет.
Примеры вызова разных вариантов для обычной формы:
//Если форма общая
ВыбраныйWebЦвет = ПолучитьОбщуюФорму("ПалитраWebЦветов").ОткрытьМодально();
//Если встроена в конфигурацию обработкой
ВыбраныйWebЦвет = Обработки.ВыборWebЦвета.ПолучитьФорму("ПалитраWebЦветов").ОткрытьМодально();
Если НЕ ВыбраныйWebЦвет = Неопределено Тогда
Элемент.ЦветФонаКнопки = ВыбраныйWebЦвет;
Элемент.Заголовок = ВыбраныйWebЦвет;
КонецЕсли;
Пример вызова для управляемой формы 8.3:
&НаКлиенте
Процедура ПриНажатииДемоКнопки(Команда)
Кнопка = ЭтаФорма.ТекущийЭлемент;
Обработчик = Новый ОписаниеОповещения("ПриВыбореWebЦвета", ЭтаФорма);
Режим = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца;
ДопПарам = Новый Структура("ИмяКнопки", Кнопка.Имя);
//Если форма общая
ОткрытьФорму("ОбщаяФорма.ПалитраWebЦветовУправляемая", ДопПарам,,,,, Обработчик, Режим);
//Если встроена в конфигурацию обработкой
ОткрытьФорму("Обработка.ВыборWebЦвета.Форма.ПалитраWebЦветовУправляемая", ДопПарам,,,,, Обработчик, Режим);
КонецПроцедуры
&НаКлиенте
Процедура ПриВыбореWebЦвета(ВыбраныйWebЦвет, ДополнительныеПараметры) Экспорт
Если НЕ ВыбраныйWebЦвет = НеопределеноТогда
ИмяКнопки = ЭтаФорма.ТекущийЭлемент.Имя;
Элементы[ИмяКнопки].ЦветФона = ВыбраныйWebЦвет;
Элементы[ИмяКнопки].Заголовок = ВыбраныйWebЦвет;
КонецЕсли;
КонецПроцедуры
Пример вызова для управляемой формы 8.2:
//Если форма общая
ВыбраныйWebЦвет = ОткрытьФормуМодально("ОбщаяФорма.ПалитраWebЦветовУправляемая");
//Если встроена в конфигурацию обработкой
ВыбраныйWebЦвет = ОткрытьФормуМодально("Обработка.ВыборWebЦвета.Форма.ПалитраWebЦветовУправляемая");
//Обработка выбора цвета
Если НЕ ВыбраныйWebЦвет = НеопределеноТогда
ИмяКнопки = ЭтаФорма.ТекущийЭлемент.Имя;
Элементы[ИмяКнопки].ЦветФона = ВыбраныйWebЦвет;
Элементы[ИмяКнопки].Заголовок = ВыбраныйWebЦвет;
КонецЕсли;
Для платформ 8.2 и 8.3 обычная форма работает одинаково. Для управляемой формы в платформе 8.3 в отличие от 8.2 используется немодальный вызов формы выбора и расширенная подсказка для кнопок.
В следующих публикациях ждем обработки по выбору файла, вводу строки, числа и т.п.
Клёво! Красочно! Ярко! Креативно! Но зачем?
Зачем — в моем случае пользователи так настраиваются себе интерфейс. Выбирают цвета для кнопок в фронте фастфуда под тачскрин
(4) Зачем обработка, когда есть ДиалогВыбораЦвета?
(5) Alexey_, Под тачскрин нужны были кнопки побольше. Вот и сделал, чтобы все цвета сразу на виду и пальцем проще тыкать.
Молодец.
Я себе тоже ваял чтобы видеть наглядно цвет и как он называется программно.
Такая вещь нужна, но я смотрю — по скринам, как будто не совсем упорядочивание правильное.
Зеленые в разнобой немного, розовые.
Если бы автоматическое было (по ргб) — вот хорошо бы.
Кто-нибудь знает, как автоматически упорядочить web-цвета по РГБ?
Можно, конечно, руками, но лучше автоматом.
Отлично. После некоторых доработок встроил в упп. Вопрос зачем. У нас много производственного оборудования. Каждое оборудование нужно выделять цветом. Чтобы не приходилось кодить, сделал выбор через эту обработку.
По РГБ было бы не плохо.. Кто отсортирует «СтрокаЦветов» выкладывайте. в комменты.
(5) В ДиалогеВыбораЦвета еще присутствуют цвета стиля, которые не всегда и нужны…
Автору — респект, встроил в УТ10.
Правильно человек сказал.
Для пользунов сие произведение, ленивых пользунов.
Не стоит их так баловать, пусть хоть немного мозги включают.