У поля есть своя библиотечная картинка. Кнопка поочерёдно заменяет её допустимой пустой картинкой и восстанавливает ресурс.
Где и как запускать
Полный модуль собственной обычной формы в учебной базе с общей картинкой УчебныйМаркер; толстый клиент.
Подготовка
Нужна отдельная учебная конфигурация без рабочих данных. В Конфигураторе создайте Общие → Общие картинки → УчебныйМаркер. Не изменяйте общие картинки КА2/УНФ/УТ.
В картинку УчебныйМаркер импортируйте собственный PNG owned-book-marker-32.png из подпапки lesson-assets рядом с этим руководством. Если файла нет, в каталоге руководства запустите C:\Python314\python.exe make-lesson-picture-fixture.py. Это включённая учебная отметка 32×32, не скачивание из интернета.
Обновите только учебную конфигурацию. Имя УчебныйМаркер используется в БиблиотекаКартинок.УчебныйМаркер; произвольную двоичную картинку нельзя присвоить вместо библиотечной в рассматриваемых свойствах.
Создайте отдельную внешнюю обработку с обычной формой, реквизитами УчебнаяПоказана (Булево) и УчебныеНажатия (Число 6.0). Добавьте поле картинки УчебноеИзображение, обычную кнопку УчебнаяКоманда вне картинки.
ПриОткрытии свяжите с процедурой модуля. Другие действия вручную не назначайте: код использует Действие и экспортные процедуры с первым параметром Элемент. ПриОткрытии самой обычной формы остаётся без параметров. Запускайте толстым клиентом с обычными формами.
Каждый урок — полный модуль отдельной копии. Картинка, переключатели и счётчик принадлежат только учебной форме в памяти.
Процедура ПриОткрытии()
УчебнаяПоказана = Истина;
УчебныеНажатия = 0;
Картинка = ЭтаФорма.ЭлементыФормы.УчебноеИзображение;
Картинка.Картинка = БиблиотекаКартинок.УчебныйМаркер;
Картинка.Гиперссылка = Ложь;
Картинка.РазрешитьНачалоПеретаскивания = Ложь;
Картинка.РазрешитьПеретаскивание = Ложь;
Кнопка = ЭтаФорма.ЭлементыФормы.УчебнаяКоманда;
Кнопка.УстановитьДействие("Нажатие", Новый Действие("ВыполнитьУчебноеДействие"));
Картинка.ТекстНевыбраннойКартинки = "Своё изображение временно скрыто";
Картинка.Подсказка = "Учебная отметка, не файл рабочего товара";
КонецПроцедуры
Процедура ВыполнитьУчебноеДействие(Элемент) Экспорт
Картинка = ЭтаФорма.ЭлементыФормы.УчебноеИзображение;
УчебнаяПоказана = НЕ УчебнаяПоказана;
Если УчебнаяПоказана Тогда
Картинка.Картинка = БиблиотекаКартинок.УчебныйМаркер;
Сообщить(Картинка.Картинка.Ширина() = 32 И Картинка.Картинка.Высота() = 32);
Иначе
Картинка.Картинка = Новый Картинка;
Сообщить("Картинка снята, ожидается текст пустого поля");
КонецЕсли;
Сообщить(УчебныеНажатия = 0);
КонецПроцедуры
Разбор по шагам
Ресурс сначала импортирован в собственную общую картинку. БиблиотекаКартинок не создаёт его по одному имени автоматически.
Обычное поле картинки программно допускает Пустая и ИзБиблиотеки. Обе ветки используют эти допустимые виды.
Реквизит УчебнаяПоказана хранит состояние переключателя, не постоянный путь к файлу. Пустой текст центрируется и многострочный по справке.
Размеры проверяются только в ветке непустой картинки. Счётчик нажатий в этом уроке не изменяется.
Как проверить результат
Первое нажатие: сообщение о снятии и Истина. Второе: два Истина, картинка снова 32×32.
Чередование можно повторять; содержимое библиотеки не меняется.
Ожидаемый результат
Показан допустимый способ очистки и восстановления картинки обычной формы.
На что обратить внимание
Без импорта общей картинки пример не готов к запуску; эту подготовку нельзя пропускать.
Это не удаление PNG или общей картинки конфигурации.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.