powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Как восстановить открытую страницу панели на форме.
5 сообщений из 5, страница 1 из 1
Как восстановить открытую страницу панели на форме.
    #36203958
Юрец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте. Нужно перед закрытием формы запомнить текущую страницу панели, а при открытии восстаналивать.
Есть такой код:
Код: plaintext
1.
2.
3.
4.
Процедура ПриЗакрытии()
	//Запоминаем активную страницу панели
	СохранитьЗначение("Панель",ЭлементыФормы.Панель.ТекущаяСтраница);
КонецПроцедуры
И при открытии:
Код: plaintext
1.
2.
3.
4.
5.
Процедура ПриОткрытии()
	//Восстановим страницы
	ТекущаяСтраница = ВосстановитьЗначение("Панель");
	ЭлементыФормы.Панель.ТекущаяСтраница = ?(ТекущаяСтраница<>Неопределено, ТекущаяСтраница, ЭлементыФормы.Панель.Страницы.СтраницаВсе);
КонецПроцедуры

Не работает, не восстанавливает. Заранее спасибо за любую помощь.
...
Рейтинг: 0 / 0
Как восстановить открытую страницу панели на форме.
    #36203981
Юрец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот так работает:

Код: plaintext
1.
2.
3.
4.
Процедура ПриЗакрытии()
	//Запоминаем активную страницу панели
	СохранитьЗначение("Панель",ЭлементыФормы.Панель.ТекущаяСтраница.Имя);
КонецПроцедуры

Код: plaintext
1.
2.
3.
4.
5.
Процедура ПриОткрытии()
	//Восстановим страницы
	ТекущаяСтраница = ВосстановитьЗначение("Панель");
	ЭлементыФормы.Панель.ТекущаяСтраница = ?(ТекущаяСтраница<>Неопределено, ЭлементыФормы.Панель.Страницы.Найти(ТекущаяСтраница), ЭлементыФормы.Панель.Страницы.СтраницаВсе);
КонецПроцедуры

Странно всё это как-то. Похоже 1С не правильно сохраняет СтраницуПанели, а потом восстановить не может.
...
Рейтинг: 0 / 0
Как восстановить открытую страницу панели на форме.
    #36204087
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как то нелогично что будет тип "страница панели" сохраняться. Ведь по сути это объект со своими методами. И для него например тогда должно работать:
ВосстановитьЗначение("Панель").Видимость() и тд...

А потом почему вас тогда не удивляет что не работает СохранитьЗначение(некийдокумент) - ведь это тоже объект...

Сохранять можно только что-то постоянное (не имеющее своих методов и свойств)
...
Рейтинг: 0 / 0
Как восстановить открытую страницу панели на форме.
    #36206798
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно еще индекс сохранять
по методу количество() проверить что больше индекс или количество
и ...

ЭлементыФормы.Панель.ТекущаяСтраница = ЭлементыФормы.Панель.Страницы[Индекс];
...
Рейтинг: 0 / 0
Как восстановить открытую страницу панели на форме.
    #36207502
Юрец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист 1сКак то нелогично что будет тип "страница панели" сохраняться. Ведь по сути это объект со своими методами. И для него например тогда должно работать:
ВосстановитьЗначение("Панель").Видимость() и тд...

Тем не менее сохраняется именно тип СтраницаПанели, со всеми вытекающими свойствами. А вот загружаться уже не загружается.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Как восстановить открытую страницу панели на форме.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]