Как открыть MS Word из 1С поверх других окон (на переднем плане)
В продолжение материала «Пример работы с MS Word из 1С:Предприятие 8» хотелось бы поделиться следующим опытом.
Иногда (особенно это актуально для пользователей, которые работают через терминальное подключение к серверу), окно Microsoft Word открывается, но оказывается либо минимизированным, либо свернутым, либо окно 1С перекрывает его. Соответственно пользователь окно Word не видит.
Ниже приведу два способа, позволяющие «выгнать» окно Word на передний план.
1. У объекта Application есть свойство WindowState, которое возвращает или устанавливает состояние окна документа, которое может принимать три значения: Normal, Maximized и Minimized (в значениях 1С - это 0, 1 и 2 соответственно). Суть данного способа сводится к тому, чтобы свернуть и снова развернуть окно.
ОбъектВорд.Application.Visible = Истина;
ОбъектВорд.Application.WindowState = 2;
ОбъектВорд.Application.WindowState = 1;
2. Второй способ является продолжением первого, но в этом случае мы сворачиваем все активные окна и разворачиваем все имеющиеся окна MS Word.
Оболочка = Новый COMОбъект("Shell.Application");
Оболочка.MinimizeAll();
ОбъектВорд.Visible = -1;
Окна = Документ.Windows;
Для Сч = 1 По Окна.Count Цикл
Окно = Окна.Item(Сч);
Окно.WindowState = 1;
КонецЦикла;
ОбъектВорд.Activate();
Комментарии
Спасибо. Помогло.
Спасибо. Помогло.
Спасибо, работает
Спасибо, работает
Спасибо
Спасибо
Thanks!
Thanks!
Большие спасибо!
Большие спасибо!
Спасибо, то что надо))
Спасибо, то что надо))
Пожалуйста)
Пожалуйста)
Спасибо большое! Класс.
Спасибо большое! Класс.
Спасибо! Работает.
Спасибо! Работает.
А то ...Application.Visible = Истина;
....Activate(); и прочее было безуспешно.
Спасибо!
Спасибо!
Отлично! Помогла, раельно!
Отлично! Помогла, раельно! Кучу форумов пересмотрел. А первый вариант сработал!
Супер! Спасибо)
Супер! Спасибо)
Добавить комментарий