1с управляемые формы окно на весь экран

Заметки из Зазеркалья

Реализовано в версии 8.3.10.2168.

В интерфейсе Такси мы реализовали несколько новых режимов основного окна клиентских приложений. Они позволят вам использовать максимальное пространство экрана и скрыть стандартные элементы интерфейса, которые не нужны для задачи, выполняемой приложением.

Эти режимы будут удобны в тех случаях, когда приложение запускается на специализированных устройствах, таких как кассовые аппараты, терминалы сбора данных и тому подобных. Также эти режимы будут полезны для работы в простых приложениях, состоящих из нескольких форм, и не требующих отображения стандартных панелей интерфейса и области системных команд.

Нужно сказать, что в платформе существуют некоторые возможности максимизации рабочего пространства: открытие формы в отдельном окне, скрытие активных панелей сочетанием клавиш Ctrl + Shift +

. Но они не позволяют целиком решить задачи, возникающие в упомянутых сценариях работы. Поэтому мы решили, что нужно какое-то комплексное решение. Так и появились новые режимы основного окна.

Управление режимом

Задать режим основного окна вы можете в конфигураторе, или из встроенного языка. Но тут есть особенность. Мы предполагаем, что режим основного окна определяется самой сутью прикладного решения. Поэтому возможность изменить его программно существует только при старте прикладного решения. В дальнейшем клиентское приложение будет функционировать в том режиме, который ему установлен.

В конфигураторе для этого мы добавили новое свойство конфигурации Режим основного окна клиентского приложения, а во встроенном языке реализовали два метода: УстановитьРежимОсновногоОкна() и ПолучитьРежимОсновногоОкна(). Метод УстановитьРежимОсновногоОкна() вы можете вызывать только в обработчике события ПередНачаломРаботыСистемы.

Возможные режимы

Возможных режимов работы получилось четыре. Обычный – для работы как раньше, и три новых режима: РабочееМесто, ПолноэкранноеРабочееМесто и Киоск. Понять их отличия можно на примере начальной страницы 1С:Бухгалтерии.

216e45ce0508772fd82d23441bc5fc21

В режиме РабочееМесто мы скрываем все панели и область системных команд (главное меню и набор вспомогательных команд). Скрываем надпись Начальная страница, кнопки навигации Вперед/Назад, а также отключаем сочетания клавиш, которые используются в этих скрытых элементах интерфейса.

2e427de00e348a8640f037499cba6160

Режим ПолноэкранноеРабочееМесто скрывает всё то же самое, что и режим РабочееМесто, но дополнительно к этому основное окно разворачивается на весь экран, и скрываются кнопки управления окном (Свернуть, Восстановить, Закрыть).

316a15ce8a05209ba49be02a6d812a65

В режиме Киоск дополнительно ко всему перечисленному скрывается гиперссылка с именем пользователя и кнопка О программе. Этот режим мы позиционируем для «внешних» пользователей, поэтому персональная информация тут не используется и не нужна.

Примеры использования

Режим РабочееМесто вы можете использовать для простых приложений. Например, для гипотетического приложения Почтовый клиент, у которого есть всего две функции – приём и отправка почты.

e52755a9a242aa46e63fdd7dc6e5152b

Тут на начальной странице расположена одна форма. Всё лишнее скрыто. И даже скрыт заголовок формы. Такую возможность мы тоже реализовали, она управляется отдельно.

Режим ПолноэкранноеРабочееМесто вы можете использовать, например, для создания рабочего места кассира.

81e30efb14def758e67d0c587de6cd11

Для кассира важно, чтобы на экране было минимум информации, не относящейся к его функциям. При этом ему доступна гиперссылка с именем пользователя, по которой он может завершить работу в программе.

Режим Киоск удобен для простых приложений, в которых не требуется аутентификация пользователя в информационной базе. Например, это может быть платёжный терминал.

9ca8bc7e22f272a8901ededb72134ddb

Как совсем фантастический пример, в этом режиме можно реализовать интерфейс банкомата, например.

b75be2eafce2bc337047cf297d2f9a4c

Особенности веб-клиента

Браузеры в ряде случаев ограничивают возможности работающего внутри них программного кода, и требуют интерактивного взаимодействия с пользователем. По этой причине при использовании новых режимов работы в веб-клиенте есть две особенности, отсутствующие в тонком клиенте.

Во-первых, браузеры не позволяют веб-клиенту самостоятельно перейти в полноэкранный режим без участия пользователя. Поэтому сначала мы вынуждены показать диалог.

1ec4f754911ba1ac8f37e76c51c6f3af

И только по нажатию кнопки в этом диалоге (по действию пользователя) происходит переход в полноэкранный режим.

Во-вторых, браузеры перехватывают нажатие клавиши Esc и пытаются выйти из полноэкранного режима. Здесь мы исходим из того, что если разработчик установил полноэкранный режим работы, то именно в таком режиме работа и должна продолжаться. Поэтому на нажатие клавиши Esc мы показываем диалог, который возвращает пользователя в полноэкранный режим.

a550a4b378d5b11516bbcb455658c7fa

Скрытие заголовка формы

Применение того или иного режима основного окна приводит к изменению сразу многих элементов интерфейса. Однако вам может потребоваться более тонкое управление некоторыми из них, например заголовком формы или кнопкой закрытия окна. Для этих элементов мы реализовали дополнительное отдельное управление.

Скрывать или показывать заголовок управляемой формы вы можете теперь с помощью свойства формы ОтображатьЗаголовок. Если установлен Обычный режим основного окна, то это свойство действует только на формы, расположенные на начальной странице. В других режимах это свойство действует на все управляемые формы.

Например, в режиме Обычный начальная страница с двумя формами, у которых заголовки включены или выключены, будет выглядеть следующим образом.

86d366bb9908f0d30d0254e4fea15c11

А вот в случае, когда на начальной странице находится только одна форма, мы изменили стандартное поведение платформы. Теперь стандартно, при включенном заголовке формы, заголовок формы отображается вместо надписи Начальная страница.

c740186c4f93934130e73415befac6b6

А при выключенном заголовке формы снова появляется надпись Начальная страница.

5b1fed393249df243584ebe05ddafcd3

Скрытие кнопки закрытия окна приложения

Ещё одно новое свойство управляемой формы, ОтображатьКнопкуЗакрытия, позволяет вам скрыть кнопку закрытия формы и одновременно отключить стандартные действия, выполняемые по клавише Esc. Оно работает только в новых режимах открытия основного окна РабочееМесто, ПолноэкранноеРабочееМесто или Киоск.

С помощью этого свойства вы можете создавать формы, которые пользователь не сможет закрыть стандартными способами. Предполагается, что для таких форм вы определите иной способ закрытия.

Источник

Режимы основного окна

Разные режимы основного окна клиентского приложения позволяют использовать максимальное пространство экрана и скрыть стандартные элементы интерфейса, которые не нужны для задачи, выполняемой приложением. Эти режимы удобны в тех случаях, когда приложение запускается на специализированных устройствах, таких как кассовые аппараты, терминалы сбора данных и тому подобных. Также эти режимы полезны для работы в простых приложениях, состоящих из нескольких форм, и не требующих отображения стандартных панелей интерфейса и области системных команд.

Обычный режим

В обычном режиме отображается главная панель, панель разделов, панель функций текущего раздела и другие стандартные элементы интерфейса.

000000928 1

Рабочее место

В режиме Рабочее место скрываются все панели. Скрывается надпись Начальная страница, кнопки навигации Вперед/Назад, а также отключаются сочетания клавиш, которые используются в этих скрытых элементах интерфейса.

000000928 2

Полноэкранное рабочее место

В режиме Полноэкранное рабочее место, в дополнение к перечисленному выше, основное окно разворачивается на весь экран, и скрываются кнопки управления окном (Свернуть, Восстановить, Закрыть).

000000928 3

Киоск

В режиме Киоск дополнительно ко всему перечисленному скрывается гиперссылка с именем пользователя и кнопка О программе. Этот режим предназначен для «внешних» пользователей, поэтому персональная информация не нужна и не используется.

000000928 4

4455f

Авторы: В.А. Ажеронок, А.В. Островерх, М.Г. Радченко, Е.Ю. Хрусталева

Источник

Программирование в 1С для всех

Я продолжаю изучать ознакомительную версию платформы 8.3.10. Эта моя статья посвящена режиму отображения окон.

В платформе 1С 8.3.10 появилось очень интересное свойство конфигурации — «Режим основного окна клиентского приложения», которое может принимать 4-е значения

• Обычное
• Рабочее место
• Полноэкранное рабочее место
• Киоск

1 2

Отмечу, что эти режимы могут работать только с интерфейсом такси!

Изучим новые режимы.
На «Обычном» я не буду останавливаться, поскольку тут все понятно из названия, моя конфигурация при обычном режиме основного окна имеет следующий вид:

2 2

Перейдем к режиму «Рабочее место». Когда своей тестовой конфигурации я установил режим основного окна «Рабочее место», то после перезапуска, 1С: Предприятие приобрело следующий вид

3 2

Если Вы сравните второй и третий рисунок, то заметите много существенных отличий – нет панелей, нет практически всех системных команд, нет главного меню. Остались кнопки закрытия, сворачивания приложения,кнопка информации о программе, гиперссылка пользователя.
Открыв приложение с режимом основного окна «Рабочее место», пользователь не сможет самостоятельно его настроить под себя, как мы обычно привыкли это делать, когда работаем с управляемыми формами.
Данный режим удобно использовать для разработки простых приложений. Например, можно сделать какой-нибудь вариант мессенджера – программы обмена сообщений.
Рассмотрим следующий режим – Полноэкранное рабочее место.

4 2

Окно открылось на весь рабочий стол, нет кнопок закрытия окна, сворачивания, так же перестало отображаться главное меню, осталась только верхняя системная панель с гиперссылкой пользователя (если он заведен) и информацией о программе, а так же нижняя панель – с информацией о производительности и стеком вызовов.
Самое интересно, что закрыть это окно можно только через гиперссылку пользователя.

5 2

Если у Вас пользователь не заведен, а также на основной форме нет команды, которая закрывает приложение 1С, то закрыть приложение можно только с помощью сочетания клавиш Alt+F4.

Понятно для чего удобен такой режим – для автоматизации работы кассира, диспетчера, а также любых специалистов, выполняющих однотипный набор действий, причем компьютер или терминала, на который установлена программа, нужен только для этой работы.

Последний режим это Киоск

6 1

В этом режиме у нас уже нет гиперссылки пользователя, нет информации о программе. Поскольку ни какой командой нельзя закрыть приложение, я добавил на одну из форм команду, закрывающую 1С.

Этот режим можно использовать, когда нет смысла для авторизации пользователя. Например, если магазине нужно для покупателей сделать форму подбора товара при заказе.

Что интересно, свойство «Режим основного окна клиентского приложения» доступно только для чтения, но его можно изменить с помощью метода глобального контекста УстановитьРежимОсновногоОкна, который можно вызвать перед началом работы систем (в обработчике ПередНачаломРаботыСистемы управляемого приложения),т.е. вполне можно сделать какой-нибудь вариант 1С: Розницы, что бы рабочее место товароведа запускалось под режимом «Обычное», а рабочее место кассира — под режимом «Полноэкранное рабочее место».

Напоследок, разберем два свойства окон, которые возникли применительно к нововведениями. Это ОтображатьЗаголовок и ОтображатьКнопкуЗакрытия. Они расположены в категории использование.

7

Эти свойства работают только для режимов «Рабочее место», «Полноэкранное рабочее место» и «Киоск» интерфейса Такси. Для режима «Обычное» они работают только на формах начальной страницы.

Посмотрим, как в режиме рабочего места выглядит форма документа «Приход товара» с заголовком и кнопкой закрытия.

8

9

Без заголовка, без кнопки закрытия

10

В этом случае пользователь ни как не сможет закрыть форму, даже с помощью группы «Еще».
На этом я закончу свой обзор новых режимов отображения окно в платформе 1С 8.3.10. Надеюсь, эта информация была для вас познавательна.

Изучайте программирование в 1С в месте с моей книги «Программировать в 1С за 11 шагов»

1 %D0%B2 %D0%B6%D0%B5%D0%BB%D1%82%D0%BE%D0%BC %D1%86%D0%B2%D0%B5%D1%82%D0%B5 3D %D0%BC%D0%B0%D0%BB%D0%B5%D0%BD%D1%8C%D0%BA%D0%B0%D1%8F

Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.

Промо-код на скидку в 15% — 48PVXHeYu


Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:

можно оплатить вручную:

Яндекс.Деньги — 410012882996301
Web Money — R955262494655

Источник

Решение проблемы отображения управляемых форм на экранах с маленьким разрешением (ОС Windows)

Прочитал статью и решил поделиться своим вариантом решения вопроса. Думаю, всем знакома проблема обязательного отображения заголовка управляемых форм:

d577d9e84414a12a5bb0e15049e12093

В некоторых специфических случаях действительно могут потребоваться формы, не имеющие заголовка. Например, для создания рабочего места кассира.

Для решения подобных задач рекомендуется использовать обычные, неуправляемые формы. Потому что такие рабочие места как правило, требуют особого подхода к дизайну и эргономике, а управляемые формы в основном рассчитаны на решение типичных задач обработки данных.

В итоге решил сдвигать неразвернутое окно за границы экрана.

faf2f2f81b8187d6e0a4047709f33ef3

К примеру левый верхний угол (-17,-60) и устанавливать ширину окна 240+17*2 и высоту 60+320+17 (с учетом правой и нижней границ). При этом во всей красе проявилось ограничение Windows (разрабатывалось на win xp и win2008), что максимальный размер окна не может превышать разрешение экрана. Казалось бы тупик.

Однако при внимательном чтении MSDN обратил внимание на описание функции SetWindowPos, в частности на флаг SWP_NOSENDCHANGING, блокирующий обработку сообщения WM_WINDOWPOSCHANGING, в ходе которого и применяется ограничение на максимальный размер окна. В итоге был написан и скомпилирован скрипт на AutoIt, который принудительно выставляет размеры и положения всех открытых окон (а в rdp ТСД ничего, кроме 1С не открыто) по указанным выше условиям без изменения порядка окон. 1С запускалась с ключом /isdi, для принудительного открытия форм в отдельных окнах.

Полученный exe-файл можно запускать с помощью процедуры КомандаСистемы, однако тогда мелькает окно консоли. Чтобы этого избежать, можно вызывать через

Путь к файлу может быть любой. Конечно же для этого требуется внешняя компонента autoit (входит в полный набор, можно скачать отдельно). Выкладываю собственно скомпилированный файл и архив RAR (файл скрипта, скомпилированный скрипт, внешняя компонента).

Аналогичным образом можно устанавливать размеры и положения окон обычных форм, да и любых других приложений.

Источник

Не могу «отловить» как форма разворачивается на весь экран

defaultAvatar

defaultAvatar

bde0c4ea7bfd93103eb27d75727f20a9

bde0c4ea7bfd93103eb27d75727f20a9

Вот что подсказал гугл.

defaultAvatar

defaultAvatar

Точно, 2 пункт пропустил. Спасибо!

Читают тему:

Мероприятия

1C:Лекторий: 18 ноября 2021 года (четверг, начало в 10:00, все желающие) — Маркировка упакованной воды в программах «1С:Предприятие»

При использовании материалов активная прямая гиперссылка на перепечатанный материал обязательна.

Редакция БУХ.1С не несет ответственности за мнения и информацию, опубликованную в комментариях к материалам.

Редакция уважает мнение авторов, но не всегда разделяет его.

w6

Мы используем файлы cookie, чтобы анализировать трафик, подбирать для вас подходящий контент и рекламу, а также дать вам возможность делиться информацией в социальных сетях. Если вы продолжите использовать сайт, мы будем считать, что вас это устраивает.

Источник

Понравилась статья? Поделить с друзьями:
Добавить комментарий
  • Как сделать успешный бизнес на ритуальных услугах
  • Выездной кейтеринг в России
  • Риски бизнеса: без чего не обойтись на пути к успеху
  • 1с управляемые формы обновление формы списка
  • 1с управляемые формы обновить форму