Управление окнами и мониторами в 1С (новая версия)

20.11.24

Разработка - Инструментарий разработчика

Управление размерами, активностью и положением окон из 1С с возможностью вывода окон на второй монитор и запретом изменения окна, и работа с регионами

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Управление окнами и мониторами в 1с:
.zip 467,59Kb ver:2
37
37 Скачать (1 SM) Купить за 1 850 руб.
Управление окнами и мониторами в 1С Исходники VS C++2022
.zip 23,48Kb ver:2
10
10 Скачать (6 SM) Купить за 3 350 руб.

Обновление и компоненты и обработки для тестирования

Протестировано на платформе 1С 8.3.25.1394, на конфигурациях БП, УНФ. В среде WINDOWS  10

В комплекте два DLL файла x32 и x64, а также демонстрационная обработка.

Стандартная Native (win) библиотека для управления окнами

Позволяет вывести окно в любой точке экрана, на любом из мониторов.

Подключается как Native

ИмяКомпоненты = "SetWindow";
Рез = ПодключитьВнешнююКомпоненту(ПолныйПутьКФайлуОкон, ИмяКомпоненты, ТипВнешнейКомпоненты.Native);	
ПрогИД = "AddIn." + ИмяКомпоненты+".SetWindow";
КомпонентВК = Новый(ПрогИД);

Область применения:

Вывод второстепенного окна на второй монитор (Монитор покупателя);

Запретить пользователю изменять размер окна (Рабочее место кассира);

Вывод окна в определенном месте экрана (Рабочее место кассира, Телефония);

Просто побаловаться (Вывести окно, чтоб бухгалтера не смогли ни закрыть, не сдвинуть это окно) !

Функции

ПолучитьМониторы();

ПолучитьНастройкиМонитора(Монитор);

ПолучитьДескрипторАктивногоОкна();

ПолучитьСписокОкон();

ПолучитьДескрипторОкна(ИмяКласса, ЗаголовокОкна); 

ПолучитьПараметрыОкна(ДескрипторОкна);

Процедуры

УстановитьПозициюОкна(ДескрипторОкна, x, y);

РазвернутьНаВесьЭкран(ДескрипторОкна);

УстановитьРазмерОкна(ДескрипторОкна, ширина, высота);

//Изменена
//ВывестиОкноНаМонитор(Монитор, ДескрипторОкна);
ВывестиОкноНаМонитор(ДескрипторОкна, Монитор);

АктивизироватьОкно(ДескрипторОкна);

ЗапретитьИзменятьРазмерОкна(ДескрипторОкна, Статус);

ЗакрепитьОкно(ДескрипторОкна, Статус);

БлокироватьКнопкиУправления(ДескрипторОкна, Статус);

Добавлены:
СоздатьЭллиптическуюОбласть(ДескрипторОкна, Х1, У1, Х2, У2, ОбъединениеРегионов);

СоздатьПрямоугольноОкруглуюОбласт(ДескрипторОкна, Х1, У1, Х2, У2, Высота, Ширина, ОбъединениеРегионов);

СоздатьПолигональнуюОбласть(ДескрипторОкна, "x1;y1;x2;y2;x3;y3....",1, ОбъединениеРегионов);

УдалитьВсеОбласти(ДескрипторОкна);

 

Native компонента управление окнами вывод на два дисплея

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

12000 руб.

02.09.2020    171838    962    403    

924

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    14342    109    46    

108

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

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

22200 руб.

06.10.2023    17304    43    15    

75

Инструментарий разработчика Программист Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9360 руб.

17.05.2024    27296    96    48    

138

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

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

15000 руб.

10.11.2023    11909    45    27    

67

SALE! %

Инструментарий разработчика Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

4800 3840 руб.

14.01.2013    191259    1152    0    

920

Инструментарий разработчика Программист 8.3.14 Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

20000 руб.

07.10.2021    18096    7    32    

42

Инструментарий разработчика Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

Разработка Конструктор автоматизированных рабочих мест "Конструктор АРМ" реализована в виде расширения и является универсальным инструментом для создания АРМ любой сложности в пользовательском режиме.

3600 руб.

27.12.2024    1124    2    0    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. VmvLer 28.10.19 10:50 Сейчас в теме
Область применения заманчива, правда настройки громоздкие и чисто визуально выглядят небрежно "на отцепись"

буду ждать благодарных отзывов а ля
"скачал и стал ходить по воде"
"купила и сразу влезла в школьные джинсы"
и т.д.

когда станет ясно, что это работает - будем брать
Ta_Da; uk09; acanta; +3 Ответить
2. Grigoriy251 119 28.10.19 14:05 Сейчас в теме
(1)
сть применения заманчива, правда настройки громоздкие и чисто визуально выглядят небреж


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

Настройки нет не громоздкие, для примера (алгоритм):
1. Получаем список окон
2. Находим необходимое нам окно
3. А дальше выбираем, что с ним делать.
для примера код:
ПолныйПутьКФайлуОкон= "D:\SetWindow.dll";
ИмяКомпоненты = "SetWindow";
Рез = ПодключитьВнешнююКомпоненту(ПолныйПутьКФайлуОкон, ИмяКомпоненты, ТипВнешнейКомпоненты.Native);	
ПрогИД = "AddIn." + ИмяКомпоненты+".SetWindow";
КомпонентВК = Новый(ПрогИД);
ИдентефикаторОкна = ПолучитьДескрипторОкна("", "Калькулятор"); 
КолВоМониторов = ПолучитьМониторы();
Если КолВоМониторов=2 Тогда
         ВывестиОкноНаМонитор(2, ИдентефикаторОкна);
КонецЕсли;
РазвернутьНаВесьЭкран(ИдентефикаторОкна);
ЗапретитьИзменятьРазмерОкна(ИдентефикаторОкна, Истина);
ЗакрепитьОкно(ИдентефикаторОкна, Истина);
Показать

Только перед использованием откройте калькулятор
3. Viktor_Ermakov 371 19.02.20 16:19 Сейчас в теме
Спасибо автору, он дал старт новому опенсорсному проекту.
Пользуйтесь на здоровье
https://github.com/lintest/1cWinCtrl
Student1C; ulen; Grigoriy251; +3 Ответить
4. ITStorm 10 25.06.20 15:56 Сейчас в теме
Не работает на виндос 10, 8.3.15. Пишет Тип не определен (AddIn.SetWindow.SetWindow)
Компоненты не регистрируются и не подключаются. Попробую на семерке.

Сможете помочь ?
5. Grigoriy251 119 29.06.20 11:28 Сейчас в теме
(4)на windows 10 тестировалось, всё работает. Попробуйте от имени администратора
6. user1209971 76 15.12.20 15:05 Сейчас в теме
правильно я понял. Сеанс один, разные окна 1с на разны мониторах?
7. Grigoriy251 119 15.12.20 20:30 Сейчас в теме
(6)
но я понял. Сеанс один, разные

Да только окна должны быть независимые.
8. burmsergey 17 25.08.21 14:29 Сейчас в теме
(7) Либо я неправильно понял вопрос товарища user1209971,
либо я неправильно понял Ваш ответ.

Лично мне нужно, чтобы я мог открыть в одном сеансе 1С:Предприятие два окна, и одно из них отобразить на основном мониторе, а второе - на дополнительном. Например, открываю справочник валют, "перетаскиваю" его на дополнительный монитор, затем открываю форму нового документа, и работаю с ней на основном мониторе.

Насколько я понял, товарищ user1209971 спрашивал именно об этом.
Вы, как опять же я Вас понял, ответили, что такое возможно.

К сожалению, у меня так не получается.
Я скачал Вашу обработку ТестМонитора и попробовал с её помощью манипулировать окнами Windows. Всё прекрасно работает.
ТестМонитора управляет окнами РАЗНЫХ приложений.
Вопрос в том как управлять РАЗНЫМИ окнами ОДНОГО сеанса 1С:Предприятия.
ТестМонитора рассматривает сеанс 1С:Предприятия как одно окно.
Пример:
Запускаю сеанс 1С:Предприятия, открываю ТестМонитора, нажимаю "Получить список окон". В списке - 36 элементов.
Далее закрываю ТестМонитора, открываю справочник "Валюты", снова открываю ТестМонитора, нажимаю "Получить список окон". В списке - всё равно 36 элементов.
Вроде бы, окно справочника "Валюты" - независимое.
Что я делаю неправильно ?
Или всё таки сделать такое (разные окна 1с на разных мониторах) невозможно?
9. Grigoriy251 119 25.08.21 22:13 Сейчас в теме
(8)
и всё таки сделать такое (разные окна 1с на разных мониторах)

Можно если не модальное окно.
10. burmsergey 17 26.08.21 11:01 Сейчас в теме
(9) Про модальные окна речи вообще нет. Я думал одно окно отобразить на втором мониторе,
а с остальными окнами продолжать работу на основном (см. параграф "Лично мне нужно ..." в сообщении (8) ).

Можно если не модальное окно.

Может быть, и можно, но как ?
В примере из сообщения (8) справочник Валюты открывается именно в немодальном окне, однако в список окон не попадает.
Как же тогда им можно управлять ?

Далее.
Пробовал еще экспериментировать с параметром формы "РежимОткрытияОкна".
Создал обработку (далее - обработка-открыватель), которая открывает нужную мне форму (далее - Форма2)
с установкой "РежимОткрытияОкна" = "Блокировать окно владельца".
В этом случае Форма2 в список форм попадает!
И её можно переместить на второй монитор!
НО! Она отображается на 2-ом мониторе только когда в сеансе 1С активна форма обработки-открывателя.
При переход в другое окно этого же сеанса 1С Форма2 на втором мониторе пропадает ...

Итог: лично у меня желаемого (одно окно сеанса 1С отобразить на втором мониторе, а с остальными окнами этого же сеанса продолжать работу на основном мониторе) достичь не получилось.
11. user1779748 30.10.24 10:09 Сейчас в теме
Может ли эта компонента закрепить одно окно слева на 70 % размера экрана, и второе окно закрепить справа на оставшуюся часть? Либо закрепить одно окно сверху на 70 % экрана, а второе окно закрепить снизу 30 %. Формы управляемые.
12. Grigoriy251 119 31.10.24 07:55 Сейчас в теме
(11) в рамках одной запущенной 1с нет.
Если запущено две 1с то да. Вы можете получить размер экрана, изменить размер окна 1с, отключить масштабируемость окна и перенести его в удобное место
13. user1779748 07.11.24 15:36 Сейчас в теме
При открытии выходит ошибка "тип не определен", можете подсказать возможно ли это исправить?
Прикрепленные файлы:
14. Grigoriy251 119 08.11.24 00:36 Сейчас в теме
(13) у вас native библиотека не подключается, необходимо проверить, возможное решение запустить 1с с полными правами
15. user1779748 12.11.24 18:31 Сейчас в теме
(14) У меня не подключилась компонента в итоге, пробовал на платформе 8.3.24. 1467, 8.3.19. 1467.
16. Grigoriy251 119 20.11.24 20:59 Сейчас в теме
(15) Компонента подключается без проблем на всех этих конфигурациях.
17. user1779748 02.12.24 11:05 Сейчас в теме
(16) У меня вышло сообщение "Тип не определен", и компонента не подключилась в итоге. Это просто обратная связь. Пробовал на Windows 11, Windows 10. Обратная связь нужна для других пользователей, т.к. возврата нет, гарантии тоже нет)
18. Grigoriy251 119 02.12.24 15:38 Сейчас в теме
(17) С удовольствием вам помогу подключить её, тем более недавно добавил несколько функций, личным сообщением отправил вам номер телеграмма, чтоб можно было оперативнее вам помочь, а так можете хотя бы скриншот прикрепить.
Оставьте свое сообщение