Версия для печати темы (https://pro1c.org.ua/index.php?s=1fd183e85a23a9a5dc4109ee7939ca61&showtopic=67355)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 7.7 _ окно на весь екран

Автор: 4andriy 16.10.23, 12:35

1с 7.7
при открытии формы надо всегда нажимать "на весь екран" (квадратик)
а как сделать что-бы форма всегда открывалась на весь екран?
причем все формы открываются не на весь екран(

нашел такие варианты но они не работают:

вариант 1:

Если Форма.МодальныйРежим() = 1 Тогда 
  Окна = СоздатьОбъект("Окна");
  Окна.Максимизировать(Форма);
КонецЕсли;


вариант 2:

WSHShell = СоздатьОбъект("WScript.Shell"); 
WSHShell.SendKeys("%");
WSHShell.SendKeys("{LEFT}{DOWN 5}{ENTER}");

Автор: sava1 16.10.23, 13:48

по п.1
срр / формекс есть ?
закомментировать ЕСЛИ / КонецЕсли

Автор: denis84 16.10.23, 13:51

4andriy @ Сегодня, 13:35 * ,

Процедура глМаксимизироватьОкно() Экспорт
   Попытка
       WSHShell = СоздатьОбъект("WScript.Shell");
       WSHShell.SendKeys("%");
       WSHShell.SendKeys("{LEFT}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}");
   Исключение
   КонецПопытки;
КонецПроцедуры


Вызывать в конце процедуры "ПриОткрытии" из модуля формы

а если есть формекс, то есть такой вариант:

Процедура ПослеОткрытия()
   ФормаРасш = СоздатьОбъект("РасширениеФормы");
   ФормаРасш.Maximize = 1;
КонецПроцедуры // ПослеОткрытия()

Автор: 4andriy 16.10.23, 13:54

denis84 @ Сегодня, 14:49 * ,
проблема в том, что если нажать эти кнопки без скрипта выходит такое меню (нажать Alt + пробел) :

Restore - активно (скидает окно)
Move - не активно
Size - не активно
Minimize - активно
Mazimize - не активно

Автор: denis84 16.10.23, 14:00

4andriy @ Сегодня, 14:54 * ,
какие кнопки, я модуле формы документа у себя проверил оба варианта. у меня документ разворачивает на весь экран

Автор: 4andriy 16.10.23, 14:07

denis84 @ Сегодня, 15:00 * ,
я перепутал - это журнал ОБЩИЙ открывается не на весь екран

Автор: denis84 16.10.23, 14:18

4andriy @ Сегодня, 15:07 * ,
Я только что вставил эту процедуру в форму списка "полного журнала"

Процедура глМаксимизироватьОкно() Экспорт
   Попытка
       WSHShell = СоздатьОбъект("WScript.Shell");
       WSHShell.SendKeys("%");
       WSHShell.SendKeys("{LEFT}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}");
   Исключение
   КонецПопытки;
КонецПроцедуры

// ===============================
Процедура ПриОткрытии()                                        
    // Определение был ли быстрый отбор
    ТекСтр = глВосстановитьЗначение(ИмяФормы, "ВидОтбораЖурнала", 1);
    Если ТекСтр > ВидОтбора.РазмерСписка() Тогда
        ТекСтр = ВидОтбора.РазмерСписка();
    КонецЕсли;
    ВидОтбора.ТекущаяСтрока(ТекСтр);
    
    ПриОткрытииИЛИПереоткрытииЖурнала("Открытие");
    
    // будем отслеживать только реальные изменения этих реквизитов
    Форма.ВидОтбора.ВыполнятьФормулуТолькоПриИзменении(1);

    глМаксимизироватьОкно();
КонецПроцедуры


и у меня журнал открылся на весь экран

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua