Как получить размер (разрешение) экрана



Узнать программно размер экрана в 1С 8.3 (вариант №1):

&НаКлиенте

Функция ПолучитьРазмерЭкранаОпционально()



ИнфоЭкрана = ПолучитьИнформациюЭкрановКлиента(); // с 8.3.2; результат - фикс.массив объектов



ДПИ = ИнфоЭкрана[0].DPI;

ВысотаЭкрана = Формат(ИнфоЭкрана[0].Высота, "ЧГ=");

ШиринаЭкрана = Формат(ИнфоЭкрана[0].Ширина, "ЧГ=");

//Сообщить(СтрШаблон("Разрешение: %1x%2", ШиринаЭкрана, ВысотаЭкрана));



РазрешениеЭкрана = Новый Структура("ШиринаЭкрана,ВысотаЭкрана,ДПИ",

ИнфоЭкрана[0].Ширина,ИнфоЭкрана[0].Высота,ИнфоЭкрана[0].DPI);



Возврат РазрешениеЭкрана;



КонецФункции






Узнать программно размер экрана в 1С 8.3 (вариант №2):

&НаКлиенте

Функция ПолучитьРазмерЭкранаЧерезКом()



БраузерИЕ = Новый COMОбъект("InternetExplorer.Application");

БраузерИЕ.FullScreen = -1;



ВысотаЭкрана = Формат(БраузерИЕ.Height, "ЧГ=");

ШиринаЭкрана = Формат(БраузерИЕ.Width, "ЧГ=");

//Сообщить(СтрШаблон("Разрешение: %1x%2", ШиринаЭкрана, ВысотаЭкрана));



РазрешениеЭкрана = Новый Структура("ШиринаЭкрана, ВысотаЭкрана",

БраузерИЕ.Width, БраузерИЕ.Height);



Возврат РазрешениеЭкрана;



КонецФункции






Узнать ориентацию экрана в 1С 8.3:

&НаКлиенте

Функция ПолучитьОриентациюЭкрана(ШиринаЭкрана, ВысотаЭкрана)



ОриентацияЭкрана="";

Если ВысотаЭкрана > ШиринаЭкрана Тогда

ОриентацияЭкрана="Портрет";

Иначе

ОриентацияЭкрана="Ландшафт";

КонецЕсли;



//Если ОриентацияЭкрана="Портрет" Тогда

// АвтоПоворотЭкрана(ШиринаЭкрана, ВысотаЭкрана);

//КонецЕсли;



Возврат ОриентацияЭкрана;



КонецФункции






✍️ @odin1C_rus