Размер браузера - ошибка?

zhenya777

Client
Регистрация
21.11.2018
Сообщения
236
Благодарностей
44
Баллы
28
Подскажите, это нормально или нет? В PM так показывает.
47123
 

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 871
Благодарностей
1 117
Баллы
113
Подскажите, это нормально или нет? В PM так показывает.
Посмотреть вложение 47123
Я если честно не уверен что их скрипт отрабатывает правильно. Допустим есть ширина/высота и видимая область которая меньше из-за меню/вкладок/закладок и тд
 
  • Спасибо
Реакции: zhenya777

zhenya777

Client
Регистрация
21.11.2018
Сообщения
236
Благодарностей
44
Баллы
28

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 871
Благодарностей
1 117
Баллы
113
C#:
Random r = new Random();

// Формируем набор популярных десктопных разрешений [Идея хранения позаимствована у doc'a, за что ему большая благодарность!]
int [,] resolutionSet = {
    {2880, 1800},
    {2560, 1600},
    {2560, 1440},
    {1920, 1200},
    {1920, 1080},
    {1680, 1050},
    {1600, 1200},
    {1600, 900},
    {1440, 900},
    {1366, 768},
    {1360, 768},
    {1280, 1024},
    {1280, 800},
    {1280, 768},
    {1152, 864},
    {1080, 1920},
    {1024, 768}
};
// Получаем рандомное разрешение и устанавливаем
int resolution = r.Next(resolutionSet.Length/2);
project.Profile.ScreenSizeWidth = resolutionSet[resolution, 0];
project.Profile.ScreenSizeHeight = resolutionSet[resolution, 1];
// Видимая область
project.Profile.AvailScreenWidth = project.Profile.ScreenSizeWidth-17;
project.Profile.AvailScreenHeight = project.Profile.ScreenSizeHeight-40;
// Глубина цвета монитора (Color Depth)
// [Чуть позже будет обновление механизма установки этого параметра]
instance.SetScreenPreference("screen_color_depth", 24);
Пробуй незнаю на сколько актуален
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 466
Благодарностей
8 688
Баллы
113
  • Спасибо
Реакции: zhenya777

zhenya777

Client
Регистрация
21.11.2018
Сообщения
236
Благодарностей
44
Баллы
28
Все верно.
Обычные десктоп браузеры точно такое же покажут.
Берется высота документа, не видимая область.
Спасибо. Проверил в своих браузерах, действительно показывает также
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 691
Баллы
113

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 871
Благодарностей
1 117
Баллы
113
Все верно.
Обычные десктоп браузеры точно такое же покажут.
Берется высота документа, не видимая область.
Да показывает высоту и ширину документа со скроллом
document.documentElement.scrollWidth
document.documentElement.scrollHidth
 
  • Спасибо
Реакции: zhenya777

zhenya777

Client
Регистрация
21.11.2018
Сообщения
236
Благодарностей
44
Баллы
28

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 871
Благодарностей
1 117
Баллы
113
Очень редкое разрешение:

 
  • Спасибо
Реакции: zhenya777

zhenya777

Client
Регистрация
21.11.2018
Сообщения
236
Благодарностей
44
Баллы
28
C#:
Random r = new Random();

// Формируем набор популярных десктопных разрешений [Идея хранения позаимствована у doc'a, за что ему большая благодарность!]
int [,] resolutionSet = {
    {2880, 1800},
    {2560, 1600},
    {2560, 1440},
    {1920, 1200},
    {1920, 1080},
    {1680, 1050},
    {1600, 1200},
    {1600, 900},
    {1440, 900},
    {1366, 768},
    {1360, 768},
    {1280, 1024},
    {1280, 800},
    {1280, 768},
    {1152, 864},
    {1080, 1920},
    {1024, 768}
};
// Получаем рандомное разрешение и устанавливаем
int resolution = r.Next(resolutionSet.Length/2);
project.Profile.ScreenSizeWidth = resolutionSet[resolution, 0];
project.Profile.ScreenSizeHeight = resolutionSet[resolution, 1];
// Видимая область
project.Profile.AvailScreenWidth = project.Profile.ScreenSizeWidth-17;
project.Profile.AvailScreenHeight = project.Profile.ScreenSizeHeight-40;
// Глубина цвета монитора (Color Depth)
// [Чуть позже будет обновление механизма установки этого параметра]
instance.SetScreenPreference("screen_color_depth", 24);
Пробуй незнаю на сколько актуален
Код вроде работает, а сам как-то по другому генеришь?
 

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 871
Благодарностей
1 117
Баллы
113
Код вроде работает, а сам как-то по другому генеришь?
Стандартными средствами + меняю размеры инстанса

P/s этот параметр не нужно смотреть в PM, его нужно смотреть в ZP
 
Последнее редактирование:
  • Спасибо
Реакции: zhenya777

zhenya777

Client
Регистрация
21.11.2018
Сообщения
236
Благодарностей
44
Баллы
28
Стандартными средствами + меняю размеры инстанса

P/s этот параметр не нужно смотреть в PM, его нужно смотреть в ZP
C#:
//эмуляция window size
int Hscreen = project.Profile.AvailScreenHeight; //высота экрана
int Wscreen = project.Profile.AvailScreenWidth; //ширина

//изменяем размеры окна браузера, в зависимости от размеров экрана

    int hWS = Hscreen - project.Profile.AvailScreenHeight - project.Profile.OuterHeightShift;
    int wWS = Wscreen - project.Profile.AvailScreenWidth - project.Profile.OuterWidthShift;

//где project.Profile.OuterHeightShift (константа, 108) - насколько я понял, это всякие рамки окна браузера, плюс панель задач win
// c шириной все аналогично — рамки-бордеры, project.Profile.AvailScreenWidth всегда = 16

//изменяем размеры окна браузера
instance.SetWindowSize(hWS, wWS);

На форуме нашел как менять размеры инстанса, не такой случайно?

*Ред.: с ним вообще ничего не открывается в PM
 

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 871
Благодарностей
1 117
Баллы
113
C#:
instance.SetWindowSize(project.Profile.ScreenSizeWidth, project.Profile.ScreenSizeHeight);
 
  • Спасибо
Реакции: zhenya777

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 871
Благодарностей
1 117
Баллы
113
C#:
//эмуляция window size
int Hscreen = project.Profile.AvailScreenHeight; //высота экрана
int Wscreen = project.Profile.AvailScreenWidth; //ширина

//изменяем размеры окна браузера, в зависимости от размеров экрана

    int hWS = Hscreen - project.Profile.AvailScreenHeight - project.Profile.OuterHeightShift;
    int wWS = Wscreen - project.Profile.AvailScreenWidth - project.Profile.OuterWidthShift;

//где project.Profile.OuterHeightShift (константа, 108) - насколько я понял, это всякие рамки окна браузера, плюс панель задач win
// c шириной все аналогично — рамки-бордеры, project.Profile.AvailScreenWidth всегда = 16

//изменяем размеры окна браузера
instance.SetWindowSize(hWS, wWS);

На форуме нашел как менять размеры инстанса, не такой случайно?

*Ред.: с ним вообще ничего не открывается в PM
C#:
instance.SetWindowSize(project.Profile.ScreenSizeWidth, project.Profile.ScreenSizeHeight);
 
  • Спасибо
Реакции: zhenya777

zhenya777

Client
Регистрация
21.11.2018
Сообщения
236
Благодарностей
44
Баллы
28
  • Спасибо
Реакции: Valandersi

ivan_777

Client
Регистрация
17.04.2020
Сообщения
7
Благодарностей
1
Баллы
3
Ребята, подскажите, что куда писать, чтобы задать ширину экрана в проекте ЗП?
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)