Вставляет страницу в нужную позицию коллекции страниц панели.
Синтаксис
Вставить(<НомерЭлемента>, <Имя>, <Заголовок>, <Значение>, <КартинкаЗаголовка>)Примеры платформы
СтраницаПанели = ЭлементыФормы.ОсновнаяПанель.Страницы.Вставить(
ТаблицаРегистровНакопления.Индекс(СтрокаТаблицы),
СтрокаТаблицы.Имя,
СтрокаТаблицы.Представление);Полное описание, параметры и ограничения
СтраницыПанели.Вставить (PanelPages.Insert)
СтраницыПанели (PanelPages)
Вставить (Insert)
Доступен, начиная с версии 8.0.
Синтаксис:
Вставить(<НомерЭлемента>, <Имя>, <Заголовок>, <Значение>, <КартинкаЗаголовка>)
Параметры:
<НомерЭлемента> (обязательный)
Тип: Число.
Позиция, в которую должен быть помещена страница.
<Имя> (необязательный)
Тип: Строка.
Имя добавляемой страницы.
<Заголовок> (необязательный)
Тип: Строка.
Текст заголовка добавляемой страницы. Если страницы панели показываются в виде закладок, то определяет текст на закладке.
<Значение> (необязательный)
Тип: Произвольный.
Значение, связанное со страницей.
<КартинкаЗаголовка> (необязательный)
Тип: Картинка.
Картинка, отображаемая на заголовке закладки.
Возвращаемое значение:
Тип: СтраницаПанели.
Описание:
Вставляет страницу в нужную позицию коллекции страниц панели.
Доступность:
Толстый клиент.
Пример:
// ТаблицаРегистровНакопления - таблица значений, для которой
// создается страница панели
// СтрокаТаблицы - текущая строка таблицы
СтраницаПанели = ЭлементыФормы.ОсновнаяПанель.Страницы.Вставить(
ТаблицаРегистровНакопления.Индекс(СтрокаТаблицы),
СтрокаТаблицы.Имя,
СтрокаТаблицы.Представление);
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Добавить и удалить только временные пустые страницы
Коллекция проходит цикл 2→3→4→2. Удаляются только созданные кодом страницы без элементов управления; две исходные остаются.
Где и как запускать
Полный модуль собственной обычной формы. Только толстый клиент с обычными формами. Действие кнопки — экспортная процедура с первым параметром Элемент.
Подготовка
Создайте отдельную внешнюю обработку с обычной формой. Запускайте толстым клиентом в режиме обычных форм, не в рабочей конфигурации.
Разместите отдельную вложенную панель УчебнаяПанель. В редакторе создайте ровно две её страницы с именами Основное и Проверка, включите распределение по страницам и выключите режим прокручиваемых страниц.
На странице Основное разместите надпись «Книга: 3», на странице Проверка — надпись «Сумма: 750». Кнопку УчебнаяКоманда разместите ВНЕ УчебнаяПанель, на основной панели формы.
Событие ПриОткрытии формы свяжите с процедурой ПриОткрытии. Нажатие кнопки вручную не назначайте: оно связывается с процедурой ВыполнитьУчебнуюКоманду через Действие.
Каждый урок заменяет полный модуль отдельной копии формы. Страницы принадлежат только этой форме; документы и настройки базы не изменяются.
Процедура ПриОткрытии()
Панель = ЭтаФорма.ЭлементыФормы.УчебнаяПанель;
Страницы = Панель.Страницы;
Если Страницы.Количество() <> 2 Тогда
ВызватьИсключение "Нужны ровно две собственные страницы";
КонецЕсли;
Основное = Страницы.Найти("Основное");
Проверка = Страницы.Найти("Проверка");
Если Основное = Неопределено Или Проверка = Неопределено Тогда
ВызватьИсключение "Создайте страницы Основное и Проверка";
КонецЕсли;
Панель.РаспределятьПоСтраницам = Истина;
Панель.ОтображениеЗакладок = ОтображениеЗакладок.Сверху;
Основное.Видимость = Истина;
Основное.Доступность = Истина;
Проверка.Видимость = Истина;
Проверка.Доступность = Истина;
Панель.ТекущаяСтраница = Основное;
Кнопка = ЭтаФорма.ЭлементыФормы.УчебнаяКоманда;
Кнопка.Заголовок = "Выполнить учебную проверку";
Кнопка.УстановитьДействие("Нажатие", Новый Действие("ВыполнитьУчебнуюКоманду"));
КонецПроцедуры
Процедура ВыполнитьУчебнуюКоманду(Элемент) Экспорт
Панель = ЭтаФорма.ЭлементыФормы.УчебнаяПанель;
Страницы = Панель.Страницы;
Основное = Страницы.Найти("Основное");
Проверка = Страницы.Найти("Проверка");
Если Основное = Неопределено Или Проверка = Неопределено Тогда
ВызватьИсключение "Не найдены собственные страницы";
КонецЕсли;
Если Страницы.Количество() <> 2 Тогда
ВызватьИсключение "Сначала восстановите исходные две страницы";
КонецЕсли;
Временная = Страницы.Добавить("УчебныйВременный", "Временная", "temp");
Вставленная = Страницы.Вставить(1, "УчебныйВставленный", "Вставленная", "inserted");
Сообщить(Страницы.Количество() = 4);
Сообщить(Страницы.Получить(1) = Вставленная);
Сообщить(Страницы.Получить("УчебныйВременный") = Временная);
Сообщить(Страницы.Индекс(Вставленная) = 1);
Страницы.Сдвинуть(Вставленная, 1);
Сообщить(Страницы.Индекс(Вставленная) = 2);
Временная.Имя = "УчебныйПереименованный";
Сообщить(Страницы.Найти("УчебныйВременный") = Неопределено);
Сообщить(Страницы.Найти("УчебныйПереименованный") = Временная);
Панель.ТекущаяСтраница = Основное;
Страницы.Удалить(Вставленная);
Страницы.Удалить(Временная);
Сообщить(Страницы.Количество() = 2);
Сообщить(Страницы.Найти("Основное") = Основное И Страницы.Найти("Проверка") = Проверка);
КонецПроцедурыРазбор по шагам
Добавить возвращает новую страницу; Вставить принимает индекс с нуля и возвращает вторую новую страницу.
После вставки проверяем количество 4, получение по индексу и по внутреннему имени.
Сдвинуть на +1 перемещает вставленную страницу с позиции 1 на позицию 2.
Изменение Имя проверяется двумя поисками: старое исчезло, новое возвращает тот же объект.
Перед удалением выбираем исходную страницу. После Удалить не используем удалённые объекты; проверяем только коллекцию и две живые исходные страницы.
Как проверить результат
За одно нажатие все девять сообщений Истина; конечное количество 2.
Повторное нажатие повторяет тот же цикл. Обе исходные надписи остаются.
Ожидаемый результат
Все операции выполняются над собственными временными пустыми страницами.
На что обратить внимание
Удалить страницы удаляет расположенные на ней элементы управления.
Не храните ссылки на удалённые страницы.
При ошибке промежуточной операции закройте учебную форму и откройте заново.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.