Разобрать оформление собственной надписи

Учебные задачи

Текст -3 учебных книги демонстрирует выделение первого значимого минуса. Картинку и её размещение только читаем — это readonly-свойства надписи.

Где и как запускать

Полный модуль собственной обычной формы. Только толстый клиент с обычными формами; экспортные обработчики получают первым параметром инициирующий Элемент. Конструктор Действие выбирает процедуру, но не отменяет параметры события.

Подготовка

  1. Создайте отдельную внешнюю обработку с обычной формой, запускайте толстым клиентом в режиме обычных форм.

  2. Добавьте реквизит УчебноеКоличество (Число 9.0), обычную кнопку УчебнаяКнопка и элемент Надпись с именем УчебнаяНадпись. Реквизиты рабочих объектов не используются.

  3. В событии ПриОткрытии формы укажите процедуру ПриОткрытии из полного модуля. Кнопка и надпись получают действия через УстановитьДействие; вручную обработчики их Нажатие не назначайте.

  4. Каждый урок заменяет полный модуль своей копии формы. Количество и подписи живут только до закрытия формы; запись и внешние команды отсутствуют.

Процедура ПриОткрытии()
    УчебноеКоличество = 3;
    Кнопка = ЭтаФорма.ЭлементыФормы.УчебнаяКнопка;
    Надпись = ЭтаФорма.ЭлементыФормы.УчебнаяНадпись;
    Кнопка.Заголовок = "Добавить одну учебную книгу";
    Кнопка.УстановитьДействие("Нажатие", Новый Действие("ДобавитьОднуКнигу"));
    Надпись.Заголовок = "Учебных книг: 3";
    Надпись.Формат = "";
    Надпись.Заголовок = "-3 учебных книги";
    Надпись.ВыделятьОтрицательные = Истина;
    Надпись.БегущаяСтрока = РежимБегущейСтроки.НеИспользовать;
    Надпись.Гиперссылка = Ложь;
    Надпись.Доступность = Истина;
    Надпись.Подсказка = "Только учебный текст, не отрицательный складской остаток";
    Надпись.ГоризонтальноеПоложение = ГоризонтальноеПоложение.Лево;
    Надпись.ВертикальноеПоложение = ВертикальноеПоложение.Центр;
    Надпись.ЦветТекста = Новый Цвет(24, 40, 60);
    Надпись.ЦветФона = Новый Цвет(250, 252, 255);
    Надпись.ЦветРамки = Новый Цвет(160, 176, 192);
    Надпись.ПрозрачныйФон = Ложь;
    Надпись.Рамка = Новый Рамка(ТипРамкиЭлементаУправления.Одинарная, 1);
    Надпись.Шрифт = Новый Шрифт(Надпись.Шрифт, , 11, Ложь);
    Надпись.СочетаниеКлавиш = Новый СочетаниеКлавиш(Клавиша.F8, Ложь, Истина, Истина);
    Сообщить(Надпись.Заголовок = "-3 учебных книги");
    Сообщить(Надпись.ВыделятьОтрицательные);
    Сообщить(Надпись.БегущаяСтрока = РежимБегущейСтроки.НеИспользовать);
    Сообщить(Надпись.Шрифт.Размер = 11);
    Сообщить(ТипЗнч(Надпись.Картинка) = Тип("Картинка"));
    Сообщить("Положение картинки из настройки: " + Строка(Надпись.ПоложениеКартинкиНадписи));
    Сообщить("Размер картинки из настройки: " + Строка(Надпись.РазмерКартинки));
КонецПроцедуры

Процедура ДобавитьОднуКнигу(Элемент) Экспорт
    УчебноеКоличество = УчебноеКоличество + 1;
    ЭтаФорма.ЭлементыФормы.УчебнаяНадпись.Заголовок = "Учебных книг: " + Строка(УчебноеКоличество);
    Сообщить("Собственное количество: " + Строка(УчебноеКоличество));
КонецПроцедуры

Разбор по шагам

  1. Собственный Заголовок — текст, не значение остатка базы. Формат очищен, чтобы не применять чужой формат к этому пояснению.

  2. ВыделятьОтрицательные использует первый значимый минус текста; это не проверка отрицательного числа в данных.

  3. БегущаяСтрока выключена для читаемого неподвижного текста.

  4. Текст, фон и рамка оформляются отдельно; шрифт создаётся на основе прежнего.

  5. Картинка, ПоложениеКартинкиНадписи и РазмерКартинки только читаются; код не присваивает им изображение.

  6. Нажатие кнопки меняет надпись на фактическое собственное количество и убирает исходный демонстрационный минус.

Как проверить результат

  1. При открытии пять Истина и две диагностические строки картинки.

  2. Нажмите кнопку: текст становится Учебных книг: 4, число формы остаётся положительным.

Ожидаемый результат

Оформление надписи разобрано без подмены текстом фактических данных.

На что обратить внимание

  1. Красный текст не является доказательством отрицательного складского остатка.

  2. Readonly-картинка надписи настраивается в редакторе, не присваиванием в BSL.

  3. Сочетание у подписи не считается реализацией самостоятельной бизнес-команды.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.