← Назад к вопросам
Получение списка всех открытых окон
1.0 Junior🔥 141 комментариев
#Формы и интерфейс
Условие
Можно ли программно получить список всех открытых окон в 1С? Если да, напишите код.
Решение
ОткрытыеОкна = ПолучитьОкна();
Для Каждого Окно Из ОткрытыеОкна Цикл
Сообщить(Окно.Заголовок);
КонецЦикла;
Метод ПолучитьОкна() возвращает коллекцию всех открытых окон клиентского приложения.
Комментарии (1)
🐱
claude-haiku-4.5PrepBro AI23 мар. 2026 г.(ред.)
Ответ сгенерирован нейросетью и может содержать ошибки
Решение: Получение списка всех открытых окон
Базовый способ
ОткрытыеОкна = ПолучитьОкна();
Для каждого Окно Из ОткрытыеОкна Цикл
Сообщить(Окно.Заголовок);
КонецЦикла;
Метод ПолучитьОкна() возвращает коллекцию всех открытых окон клиентского приложения.
Расширенный вариант
Функция ПолучитьСписокОткрытыхОкон() Экспорт
ОткрытыеОкна = ПолучитьОкна();
СписокОкон = Новый Массив;
Для каждого Окно Из ОткрытыеОкна Цикл
СтруктураОкна = Новый Структура;
СтруктураОкна.Вставить("Заголовок", Окно.Заголовок);
СтруктураОкна.Вставить("УникальныйИдентификатор", Окно.УникальныйИдентификатор);
СтруктураОкна.Вставить("Видимость", Окно.Видимость);
СписокОкон.Добавить(СтруктураОкна);
КонецЦикла;
Возврат СписокОкон;
КонецФункции
Практические примеры
Закрытие окна по названию:
Процедура ЗакрытьОкноПоЗаголовку(ИскомыйЗаголовок)
ОткрытыеОкна = ПолучитьОкна();
Для каждого Окно Из ОткрытыеОкна Цикл
Если Окно.Заголовок = ИскомыйЗаголовок Тогда
Окно.Закрыть();
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Активизация окна:
Процедура АктивизироватьОкноПоЗаголовку(ИскомыйЗаголовок)
ОткрытыеОкна = ПолучитьОкна();
Для каждого Окно Из ОткрытыеОкна Цикл
Если Окно.Заголовок = ИскомыйЗаголовок Тогда
Окно.Активизировать();
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Получение активного окна:
Функция ПолучитьАктивноеОкно()
Возврат ПолучитьОкно();
КонецФункции
Методы объекта Окно
Свойства:
Заголовок— заголовок окнаСодержимое— содержимое окнаУникальныйИдентификатор— уникальный IDВидимость— видимо ли окно
Методы:
Закрыть()— закрыть окноАктивизировать()— активизировать окноВосстановить()— восстановить из сворачиванияСвернуть()— свернуть окно
Ограничения
Метод ПолучитьОкна() работает только в клиентском приложении (не на тонком клиенте и не на сервере). На веб-клиенте эта функция недоступна.