Предназначен для работы с диалогом специального вида для выбора цвета.
Полное описание, параметры и ограничения
ДиалогВыбораЦвета (ColorChooseDialog)
ДиалогВыбораЦвета (ColorChooseDialog)
Доступен, начиная с версии 8.0.
Свойства:
Цвет (Color)
Методы:
Выбрать (Choose)
ВыбратьАсинх (ChooseAsync)
Показать (Show)
Конструкторы:
По умолчанию
Описание:
Предназначен для работы с диалогом специального вида для выбора цвета.
Доступность:
Тонкий клиент, мобильный клиент, толстый клиент, внешнее соединение, мобильное приложение (клиент).
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Дождаться выбора цвет для своей карточки
Полная собственная форма с живым preview, исходными RGB/Arial14, подтверждением, счётчиком применений, сбросом и защитой повторного выбора. Способ завершения диалога разобран отдельно, без присваивания readonly-цвета и без рабочего объекта.
Где и как запускать
Полный модуль собственной управляемой формы тонкого Windows-клиента и полный supporting-серверный guard; GUI/1С не запускались.
Подготовка
НОВАЯ отдельная пустая файловая конфигурация УчебныйВыборЦветАсинх85 на8.5.1.1343, совместимость Не использовать, Русский, собственный тонкий Windows-клиент. Без рабочих объектов/расширений/подписок/заданий. У каждого из шести уроков своё точное имя конфигурации: основные модули не склеивать.
Конфигуратор → Общие модули → УчебныйВыборЦветАсинх85: Сервер=Да, Вызов сервера=Да, Клиент=Нет, Глобальный=Нет, Привилегированный=Нет. Вставьте весь supporting-модуль ниже — защита собственных пустых метаданных.
Своя управляемая общая форма УчебнаяКарточка85: реквизиты УчебныйЦвет85 Цвет, УчебныйШрифт85 Шрифт, ПодтверждаюСвойСтенд Булево начально Ложь, Занято Булево начально Ложь, ЧислоПрименений85 Число5.0 неотрицательное, Отчёт Строка0. Занято/счётчик пользователю не редактировать; Отчёт — многострочное поле только просмотра.
Добавьте декорацию УчебнаяКарточка85 вида Надпись — это собственная preview-карточка, не поле рабочего документа. Команды/кнопки Выбрать и Сбросить с одноимёнными действиями; событие ПриОткрытии назначьте одноимённой процедуре. Вставьте весь основной модуль формы, сохранить/F7, вручную открыть именно свою общую форму и подтвердить только свой опыт.
Arial14 — явно созданный начальный учебный шрифт; на своём Windows-стенде он должен быть доступен. Начальный цвет своего текста RGB20/100/170. Никакой настройки оформления рабочих форм/пользователей не записывается: результаты живут только в собственной открытой форме.
Пока диалог открыт или ожидается callback/Promise, не закрывайте свою форму и не меняйте её реквизиты. Занято запрещает повторный выбор/сброс; отмена выбора не является командой закрыть всю базу. Здесь GUI/диалоги/BSL не запускались.
РежимИспользованияМодальности=НеИспользовать. Этот урок использует Ждать ВыбратьАсинх в Асинх Процедура, а не скрытый модальный Выбрать.
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ПроверитьСвойСтендНаСервере();
Занято = Ложь;
ЧислоПрименений85 = 0;
УчебныйЦвет85 = Новый Цвет(20, 100, 170);
УчебныйШрифт85 = Новый Шрифт("Arial", 14, Ложь, Ложь, Ложь, Ложь, 100);
ОбновитьСвоюКарточку85();
Отчёт = "Своя карточка: Книга / 3 / 250 / 750. Изменено только оформление в памяти";
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьСвоюКарточку85()
Элементы.УчебнаяКарточка85.Заголовок = "СВОЯ УЧЕБНАЯ КАРТОЧКА85: Книга / 3 / 250 / 750";
Элементы.УчебнаяКарточка85.ЦветТекста = УчебныйЦвет85;
Элементы.УчебнаяКарточка85.Шрифт = УчебныйШрифт85;
КонецПроцедуры
&НаКлиенте
Процедура Сбросить(Команда)
Если Занято Тогда
ВызватьИсключение "Не сбрасывайте своё оформление до завершения выбора";
КонецЕсли;
УчебныйЦвет85 = Новый Цвет(20, 100, 170);
УчебныйШрифт85 = Новый Шрифт("Arial", 14, Ложь, Ложь, Ложь, Ложь, 100);
ЧислоПрименений85 = 0;
ОбновитьСвоюКарточку85();
Отчёт = "Восстановлено только своё оформление в памяти";
КонецПроцедуры
&НаКлиенте
Процедура ПроверитьНачалоВыбора85()
ПроверитьСвойСтендНаСервере();
Если Занято Тогда
ВызватьИсключение "Свой предыдущий диалог ещё не завершён";
КонецЕсли;
Если Не ПодтверждаюСвойСтенд Тогда
ВызватьИсключение "Разрешите только выбор оформления собственной карточки";
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Процедура ПроверитьСвойСтендНаСервере()
УчебныйВыборЦветАсинх85.ПроверитьСвойПустойСтенд();
КонецПроцедуры
&НаКлиенте
Процедура ПрименитьСвойРезультат85(Результат)
Если Результат = Неопределено Тогда
Отчёт = "Получено Неопределено: своё оформление не менялось";
Возврат;
КонецЕсли;
Если ТипЗнч(Результат) <> Тип("Цвет") Тогда
ВызватьИсключение "Диалог не вернул документированный собственный тип Цвет";
КонецЕсли;
УчебныйЦвет85 = Результат;
ЧислоПрименений85 = ЧислоПрименений85 + 1;
ОбновитьСвоюКарточку85();
Отчёт = "Применён реальный результат Цвет; своё число применений: " + Строка(ЧислоПрименений85);
КонецПроцедуры
&НаКлиенте
Асинх Процедура Выбрать(Команда)
ПроверитьНачалоВыбора85();
Занято = Истина;
Попытка
Диалог = Новый ДиалогВыбораЦвета;
Результат = Ждать Диалог.ВыбратьАсинх();
ПрименитьСвойРезультат85(Результат);
Исключение
Занято = Ложь;
ВызватьИсключение;
КонецПопытки;
Занято = Ложь;
КонецПроцедурыУчебныйВыборЦветАсинх85
Конфигуратор → Общие модули → УчебныйВыборЦветАсинх85 → Модуль
Полный серверный guard собственного пустого стенда; не выполнялся.
Процедура ПроверитьСвойПустойСтенд() Экспорт
Если Метаданные.Справочники.Количество() <> 0 Или Метаданные.Документы.Количество() <> 0 Или Метаданные.Перечисления.Количество() <> 0 Или Метаданные.РегистрыСведений.Количество() <> 0 Или Метаданные.РегистрыНакопления.Количество() <> 0 Или Метаданные.РегистрыБухгалтерии.Количество() <> 0 Или Метаданные.РегистрыРасчета.Количество() <> 0 Или Метаданные.ПланыВидовХарактеристик.Количество() <> 0 Или Метаданные.ПланыВидовРасчета.Количество() <> 0 Или Метаданные.ПланыСчетов.Количество() <> 0 Или Метаданные.ПланыОбмена.Количество() <> 0 Или Метаданные.Последовательности.Количество() <> 0 Или Метаданные.БизнесПроцессы.Количество() <> 0 Или Метаданные.Задачи.Количество() <> 0 Или Метаданные.ОбщиеРеквизиты.Количество() <> 0 Или Метаданные.ПодпискиНаСобытия.Количество() <> 0 Или Метаданные.РегламентныеЗадания.Количество() <> 0 Или Метаданные.ВнешниеИсточникиДанных.Количество() <> 0 Тогда
ВызватьИсключение "Нужен только свой новый пустой учебный стенд";
КонецЕсли;
Если Метаданные.ЕстьИзмененияРасширениямиКонфигурации() Тогда
ВызватьИсключение "Свой сеанс не должен изменяться расширениями";
КонецЕсли;
Источники = Новый Массив;
Источники.Добавить(ИсточникРасширенийКонфигурации.БазаДанных);
Источники.Добавить(ИсточникРасширенийКонфигурации.СеансАктивные);
Источники.Добавить(ИсточникРасширенийКонфигурации.СеансОтключенные);
Для Каждого Источник Из Источники Цикл
Расширения = РасширенияКонфигурации.Получить(, Источник);
Если ТипЗнч(Расширения) <> Тип("Массив") Тогда
ВызватьИсключение "Native список расширений должен иметь тип Массив";
КонецЕсли;
Если Расширения.Количество() <> 0 Тогда
ВызватьИсключение "В своём новом стенде нет расширений базы или сеанса";
КонецЕсли;
КонецЦикла;
Если ТранзакцияАктивна() Тогда
ВызватьИсключение "Чужая или вложенная активная транзакция не допускается";
КонецЕсли;
КонецПроцедурыРазбор по шагам
ПриОткрытии проверяет свой серверный стенд, создаёт настоящий Цвет и Шрифт, задаёт только собственной декорации заголовок/оформление. Число применений начинается с0, никаких чужих настроек не читается.
Перед выбором повторно проверяем стенд, явное подтверждение и отсутствие уже идущей операции. Сбросить возвращает только собственный RGB/Arial14 в памяти и также запрещён при Занято.
Создаётся реальный ДиалогВыбораЦвета. Его Цвет по установленной справке ТОЛЬКО ЧТЕНИЕ: начальный цвет собственной карточки не присваивается Диалог.Цвет и не обещается как стартовый цвет самого диалога.
Асинх Процедура ждёт ВыбратьАсинх. В ПрименитьСвойРезультат85 передаётся итоговый объект, не сам Promise и не предположительный Булево.
ПрименитьСвойРезультат85 отделяет Неопределено от реального Цвет: при отсутствии результата preview/счётчик не меняются; при правильном native-типе обновляется собственный реквизит, счётчик увеличивается и оформление реальной декорации обновляется.
Свой флаг занятости очищается после завершения и после исключения. Ошибка не превращается в выбранный результат; в callback-варианте ссылка на свой диалог удерживается до оповещения и затем освобождается.
Это учебный выбор и визуальный preview в собственной форме, не автоматическое сохранение параметров интерфейса. Изменение Шрифт декорации на клиенте по native-контракту обращается к серверу своего файлового стенда; не обещается отсутствие такого обращения.
Как проверить результат
Будущий положительный опыт: выбрать другой конкретный Цвет, подтвердить выбор и убедиться, что изменилась именно собственная карточка, ЧислоПрименений85 увеличилось на1, Занято вернулось в Ложь. Сбросить возвращает первоначальные собственные значения и0.
Будущий отрицательный контроль: не подтверждая ПодтверждаюСвойСтенд, нажать свою кнопку Выбрать. Диалог не должен открыться; рабочая форма или похожая карточка не выбираются вместо своей.
Будущий контроль повторного запуска: при Занято=Истина повторный выбор или Сбросить должен отказать до создания нового диалога. Не обходите его сменой метки операции.
runtimeVerifiedScenarios=0. Внешний вид выбранного шрифта/цвета, фактический диалог и события проверяются будущим ручным запуском только своей формы; тесты HTML этого не удостоверяют.
Контракт ВыбратьАсинх цвета объявляет результат Цвет и не описывает отдельно результат отмены. На своём стенде наблюдайте его фактическое значение: защитная ветка Неопределено ничего не применяет, но возврат Цвет не позволяет этому уроку обещать различение ОК/Отмена. Когда нужна явно документированная отмена, используйте отдельный modal/callback-урок.
Ожидаемый результат
Настоящий результат Цвет применён только к своей карточке; отсутствие результата не подменено значением, занятость и собственный сброс проверяются
На что обратить внимание
Выбрать, ВыбратьАсинх и Показать имеют разные формы результата: Bool, Promise и callback. Их параметры/возвращаемые типы не переставляются между overloads.
readonly Цвет у ДиалогВыбораЦвета отличается от RW Шрифт у ДиалогВыбораШрифта. Этот пример не содержит присваивания Диалог.Цвет.
Одинаковое начальное оформление собственной preview-карточки не означает, что каждый диалог умеет принять его как свой initial value. Для цвета такого setter по installed-контракту нет.
Модальный вариант показан отдельно как legacy-путь только при явно разрешённом режиме. Для немодального интерфейса используйте отдельный вариант Показать/Ждать; здесь эти окна не открывались.
Перед закрытием callback/async-диалога нельзя закрывать свою форму. Не обещается автоматическая отмена Promise при закрытии формы. Веб-/мобильный клиент и обычные формы не охвачены этим конкретным собственным Windows-стендом.
Статический разбор не измеряет доступность Arial или внешний вид. Возврат Шрифт/Цвет проверяется по native-типу и используется у реальной своей декорации; это не шаблон чтения неизвестного ИсходныйОбъект.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.
Получить немодальный выбор цвет для своей карточки
Полная собственная форма с живым preview, исходными RGB/Arial14, подтверждением, счётчиком применений, сбросом и защитой повторного выбора. Способ завершения диалога разобран отдельно, без присваивания readonly-цвета и без рабочего объекта.
Где и как запускать
Полный модуль собственной управляемой формы тонкого Windows-клиента и полный supporting-серверный guard; GUI/1С не запускались.
Подготовка
НОВАЯ отдельная пустая файловая конфигурация УчебныйВыборЦветОповещение85 на8.5.1.1343, совместимость Не использовать, Русский, собственный тонкий Windows-клиент. Без рабочих объектов/расширений/подписок/заданий. У каждого из шести уроков своё точное имя конфигурации: основные модули не склеивать.
Конфигуратор → Общие модули → УчебныйВыборЦветОповещение85: Сервер=Да, Вызов сервера=Да, Клиент=Нет, Глобальный=Нет, Привилегированный=Нет. Вставьте весь supporting-модуль ниже — защита собственных пустых метаданных.
Своя управляемая общая форма УчебнаяКарточка85: реквизиты УчебныйЦвет85 Цвет, УчебныйШрифт85 Шрифт, ПодтверждаюСвойСтенд Булево начально Ложь, Занято Булево начально Ложь, ЧислоПрименений85 Число5.0 неотрицательное, МеткаОперации85 Строка100, Отчёт Строка0. Занято/счётчик/метку пользователю не редактировать; Отчёт — многострочное поле только просмотра.
Добавьте декорацию УчебнаяКарточка85 вида Надпись — это собственная preview-карточка, не поле рабочего документа. Команды/кнопки Выбрать и Сбросить с одноимёнными действиями; событие ПриОткрытии назначьте одноимённой процедуре. Вставьте весь основной модуль формы, сохранить/F7, вручную открыть именно свою общую форму и подтвердить только свой опыт.
Arial14 — явно созданный начальный учебный шрифт; на своём Windows-стенде он должен быть доступен. Начальный цвет своего текста RGB20/100/170. Никакой настройки оформления рабочих форм/пользователей не записывается: результаты живут только в собственной открытой форме.
Пока диалог открыт или ожидается callback/Promise, не закрывайте свою форму и не меняйте её реквизиты. Занято запрещает повторный выбор/сброс; отмена выбора не является командой закрыть всю базу. Здесь GUI/диалоги/BSL не запускались.
РежимИспользованияМодальности=НеИспользовать. Этот урок использует Показать с экспортным двухпараметровым callback, а не скрытый модальный Выбрать.
&НаКлиенте
Перем СвойДиалог85;
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ПроверитьСвойСтендНаСервере();
Занято = Ложь;
ЧислоПрименений85 = 0;
МеткаОперации85 = "";
УчебныйЦвет85 = Новый Цвет(20, 100, 170);
УчебныйШрифт85 = Новый Шрифт("Arial", 14, Ложь, Ложь, Ложь, Ложь, 100);
ОбновитьСвоюКарточку85();
Отчёт = "Своя карточка: Книга / 3 / 250 / 750. Изменено только оформление в памяти";
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьСвоюКарточку85()
Элементы.УчебнаяКарточка85.Заголовок = "СВОЯ УЧЕБНАЯ КАРТОЧКА85: Книга / 3 / 250 / 750";
Элементы.УчебнаяКарточка85.ЦветТекста = УчебныйЦвет85;
Элементы.УчебнаяКарточка85.Шрифт = УчебныйШрифт85;
КонецПроцедуры
&НаКлиенте
Процедура Сбросить(Команда)
Если Занято Тогда
ВызватьИсключение "Не сбрасывайте своё оформление до завершения выбора";
КонецЕсли;
УчебныйЦвет85 = Новый Цвет(20, 100, 170);
УчебныйШрифт85 = Новый Шрифт("Arial", 14, Ложь, Ложь, Ложь, Ложь, 100);
ЧислоПрименений85 = 0;
ОбновитьСвоюКарточку85();
Отчёт = "Восстановлено только своё оформление в памяти";
КонецПроцедуры
&НаКлиенте
Процедура ПроверитьНачалоВыбора85()
ПроверитьСвойСтендНаСервере();
Если Занято Тогда
ВызватьИсключение "Свой предыдущий диалог ещё не завершён";
КонецЕсли;
Если Не ПодтверждаюСвойСтенд Тогда
ВызватьИсключение "Разрешите только выбор оформления собственной карточки";
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Процедура ПроверитьСвойСтендНаСервере()
УчебныйВыборЦветОповещение85.ПроверитьСвойПустойСтенд();
КонецПроцедуры
&НаКлиенте
Процедура ПрименитьСвойРезультат85(Результат)
Если Результат = Неопределено Тогда
Отчёт = "Получено Неопределено: своё оформление не менялось";
Возврат;
КонецЕсли;
Если ТипЗнч(Результат) <> Тип("Цвет") Тогда
ВызватьИсключение "Диалог не вернул документированный собственный тип Цвет";
КонецЕсли;
УчебныйЦвет85 = Результат;
ЧислоПрименений85 = ЧислоПрименений85 + 1;
ОбновитьСвоюКарточку85();
Отчёт = "Применён реальный результат Цвет; своё число применений: " + Строка(ЧислоПрименений85);
КонецПроцедуры
&НаКлиенте
Процедура Выбрать(Команда)
ПроверитьНачалоВыбора85();
Занято = Истина;
МеткаОперации85 = Строка(Новый УникальныйИдентификатор);
Попытка
СвойДиалог85 = Новый ДиалогВыбораЦвета;
Оповещение = Новый ОписаниеОповещения("ПослеСвоегоВыбора85", ЭтотОбъект, МеткаОперации85);
СвойДиалог85.Показать(Оповещение);
Исключение
Занято = Ложь;
СвойДиалог85 = Неопределено;
ВызватьИсключение;
КонецПопытки;
КонецПроцедуры
&НаКлиенте
Процедура ПослеСвоегоВыбора85(Результат, ДополнительныеПараметры) Экспорт
Если Не Занято Или ДополнительныеПараметры <> МеткаОперации85 Тогда
ВызватьИсключение "Оповещение не относится к текущей собственной операции";
КонецЕсли;
Попытка
ПрименитьСвойРезультат85(Результат);
Исключение
Занято = Ложь;
СвойДиалог85 = Неопределено;
ВызватьИсключение;
КонецПопытки;
Занято = Ложь;
СвойДиалог85 = Неопределено;
КонецПроцедурыУчебныйВыборЦветОповещение85
Конфигуратор → Общие модули → УчебныйВыборЦветОповещение85 → Модуль
Полный серверный guard собственного пустого стенда; не выполнялся.
Процедура ПроверитьСвойПустойСтенд() Экспорт
Если Метаданные.Справочники.Количество() <> 0 Или Метаданные.Документы.Количество() <> 0 Или Метаданные.Перечисления.Количество() <> 0 Или Метаданные.РегистрыСведений.Количество() <> 0 Или Метаданные.РегистрыНакопления.Количество() <> 0 Или Метаданные.РегистрыБухгалтерии.Количество() <> 0 Или Метаданные.РегистрыРасчета.Количество() <> 0 Или Метаданные.ПланыВидовХарактеристик.Количество() <> 0 Или Метаданные.ПланыВидовРасчета.Количество() <> 0 Или Метаданные.ПланыСчетов.Количество() <> 0 Или Метаданные.ПланыОбмена.Количество() <> 0 Или Метаданные.Последовательности.Количество() <> 0 Или Метаданные.БизнесПроцессы.Количество() <> 0 Или Метаданные.Задачи.Количество() <> 0 Или Метаданные.ОбщиеРеквизиты.Количество() <> 0 Или Метаданные.ПодпискиНаСобытия.Количество() <> 0 Или Метаданные.РегламентныеЗадания.Количество() <> 0 Или Метаданные.ВнешниеИсточникиДанных.Количество() <> 0 Тогда
ВызватьИсключение "Нужен только свой новый пустой учебный стенд";
КонецЕсли;
Если Метаданные.ЕстьИзмененияРасширениямиКонфигурации() Тогда
ВызватьИсключение "Свой сеанс не должен изменяться расширениями";
КонецЕсли;
Источники = Новый Массив;
Источники.Добавить(ИсточникРасширенийКонфигурации.БазаДанных);
Источники.Добавить(ИсточникРасширенийКонфигурации.СеансАктивные);
Источники.Добавить(ИсточникРасширенийКонфигурации.СеансОтключенные);
Для Каждого Источник Из Источники Цикл
Расширения = РасширенияКонфигурации.Получить(, Источник);
Если ТипЗнч(Расширения) <> Тип("Массив") Тогда
ВызватьИсключение "Native список расширений должен иметь тип Массив";
КонецЕсли;
Если Расширения.Количество() <> 0 Тогда
ВызватьИсключение "В своём новом стенде нет расширений базы или сеанса";
КонецЕсли;
КонецЦикла;
Если ТранзакцияАктивна() Тогда
ВызватьИсключение "Чужая или вложенная активная транзакция не допускается";
КонецЕсли;
КонецПроцедурыРазбор по шагам
ПриОткрытии проверяет свой серверный стенд, создаёт настоящий Цвет и Шрифт, задаёт только собственной декорации заголовок/оформление. Число применений начинается с0, никаких чужих настроек не читается.
Перед выбором повторно проверяем стенд, явное подтверждение и отсутствие уже идущей операции. Сбросить возвращает только собственный RGB/Arial14 в памяти и также запрещён при Занято.
Создаётся реальный ДиалогВыбораЦвета. Его Цвет по установленной справке ТОЛЬКО ЧТЕНИЕ: начальный цвет собственной карточки не присваивается Диалог.Цвет и не обещается как стартовый цвет самого диалога.
Показать получает настоящий ОписаниеОповещения. Метка текущей операции передаётся дополнительным параметром; экспортный callback принимает Результат и ДополнительныеПараметры, проверяет метку и Занято до применения.
ПрименитьСвойРезультат85 отделяет Неопределено от реального Цвет: при отсутствии результата preview/счётчик не меняются; при правильном native-типе обновляется собственный реквизит, счётчик увеличивается и оформление реальной декорации обновляется.
Свой флаг занятости очищается после завершения и после исключения. Ошибка не превращается в выбранный результат; в callback-варианте ссылка на свой диалог удерживается до оповещения и затем освобождается.
Это учебный выбор и визуальный preview в собственной форме, не автоматическое сохранение параметров интерфейса. Изменение Шрифт декорации на клиенте по native-контракту обращается к серверу своего файлового стенда; не обещается отсутствие такого обращения.
Как проверить результат
Будущий положительный опыт: выбрать другой конкретный Цвет, подтвердить выбор и убедиться, что изменилась именно собственная карточка, ЧислоПрименений85 увеличилось на1, Занято вернулось в Ложь. Сбросить возвращает первоначальные собственные значения и0.
Будущий отрицательный контроль: не подтверждая ПодтверждаюСвойСтенд, нажать свою кнопку Выбрать. Диалог не должен открыться; рабочая форма или похожая карточка не выбираются вместо своей.
Будущий контроль повторного запуска: при Занято=Истина повторный выбор или Сбросить должен отказать до создания нового диалога. Не обходите его сменой метки операции.
runtimeVerifiedScenarios=0. Внешний вид выбранного шрифта/цвета, фактический диалог и события проверяются будущим ручным запуском только своей формы; тесты HTML этого не удостоверяют.
Будущий контроль отмены: закрыть собственный диалог через Отмена. Неопределено у результата оповещения/Promise должно оставить свои оформление и счётчик прежними; последующий выбор снова разрешён.
Ожидаемый результат
Настоящий результат Цвет применён только к своей карточке; отсутствие результата не подменено значением, занятость и собственный сброс проверяются
На что обратить внимание
Выбрать, ВыбратьАсинх и Показать имеют разные формы результата: Bool, Promise и callback. Их параметры/возвращаемые типы не переставляются между overloads.
readonly Цвет у ДиалогВыбораЦвета отличается от RW Шрифт у ДиалогВыбораШрифта. Этот пример не содержит присваивания Диалог.Цвет.
Одинаковое начальное оформление собственной preview-карточки не означает, что каждый диалог умеет принять его как свой initial value. Для цвета такого setter по installed-контракту нет.
Модальный вариант показан отдельно как legacy-путь только при явно разрешённом режиме. Для немодального интерфейса используйте отдельный вариант Показать/Ждать; здесь эти окна не открывались.
Перед закрытием callback/async-диалога нельзя закрывать свою форму. Не обещается автоматическая отмена Promise при закрытии формы. Веб-/мобильный клиент и обычные формы не охвачены этим конкретным собственным Windows-стендом.
Статический разбор не измеряет доступность Arial или внешний вид. Возврат Шрифт/Цвет проверяется по native-типу и используется у реальной своей декорации; это не шаблон чтения неизвестного ИсходныйОбъект.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.