Вход | Регистрация

1С:Предприятие ::

Метки: 

Программно развернуть на весь экран окно УФ, откр.в режиме "блокировать весь интерфейс"

Я
   Тихий омут
 
22.11.17 - 10:00
Как программно развернуть на весь экран окно управляемой формы, открытое в режиме "блокировать весь интерфейс"?

этот скрипт вызывает рантайм (8.3.6.2152, win10)
WSHShell = Новый COMОбъект("WScript.Shell");
WSHShell.SendKeys("%{GRAY-}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}");    
    
этот вообще не работает - ничего не происходит
    WSHShell = Новый COMОбъект("WScript.Shell");
    WSHShell.SendKeys("%");
    WSHShell.SendKeys("{LEFT}{LEFT}{ENTER}");
 
  Рекламное место пустует
   Denis_CFO
 
1 - 22.11.17 - 10:07
(0) Вот так попробуй:
ПараметрыЭкрана = ПолучитьИнформациюЭкрановКлиента();
ЭтаФорма.Ширина = ПараметрыЭкрана[0].Ширина;
ЭтаФорма.Высота = ПараметрыЭкрана[0].Высота;
   Тихий омут
 
2 - 22.11.17 - 10:25
(1) Увы, не работает. Возможно, это связано с тем, что в параметрах экрана ширина и высота в пикселях, а в свойствах формы - в неких "символах":

УправляемаяФорма (ManagedForm)
Ширина (Width)
Использование:

Чтение и запись.
Описание:

Тип: Число.
Содержит ширину формы. Задается в символах.  
(с) СП

Справедливости ради - на что-то это влияет, а именно на соотношение размеров элементов в форме, но размер самой формы не меняется
   Denis_CFO
 
3 - 22.11.17 - 10:38
(2) У Камина в Общепите вот такое встречал:
&НаКлиенте
Процедура РазвернутьОкноНаВесьЭкран()
    Попытка
    WSHShell = Новый COMОбъект("WScript.Shell");
    WSHShell.SendKeys("% ");
    WSHShell.SendKeys("{UP}{UP}{ENTER}");
    Исключение
    КонецПопытки;
КонецПроцедуры
   Тихий омут
 
4 - 22.11.17 - 10:51
(3) Тоже не работает. За помощь огромное спасибо - нужно хотя бы перепробовать всё, что можно.
   _Дайвер_
 
5 - 22.11.17 - 11:01
Так а в параметрах формы указать не вариант ? И ширину с высотой п омаксимуму установить.
   _Дайвер_
 
6 - 22.11.17 - 11:02
(5) РежимОткрытияОкна = Блокировать интерфейс пользователя
   _Дайвер_
 
7 - 22.11.17 - 11:03
(6) ЭтаФорма.РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца;
ЭтаФорма.Ширина = ;
ЭтаФорма.Высота = ;
   _Дайвер_
 
8 - 22.11.17 - 11:07
(7) ЗАменишь на БлокироватьВесьИнтерфейс, и из параметров экрана вставишь значения высоты и ширины
   Тихий омут
 
9 - 22.11.17 - 12:46
(8) Так именно и делаю; форма открывается в режиме "Блокировать весь интерфейс", выставляю ширину/высоту формы в ПриОткрытии как советовал (1), результат см. в (2). Даже на всякий случай сделал в ПриОткрытии однократный вызов обработчика ожидания, в котором пробовал все эти манипуляции - ничего не помогает.
PS Назвать управляемым этот интерфейс - это какое-то утонченное издевательство...ладно, это эмоции...
   Denis_CFO
 
10 - 22.11.17 - 13:04
(9) Я это ПриСозданииНаСервере() у себя делал...
 
  Рекламное место пустует


Список тем форума
  Рекламное место пустует
Программист всегда исправляет последнюю ошибку.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует