judelaw
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору дано (текущие параметры экранов): Монитор1 - 1680х1050 Монитор2 - 1920х1080 запускаем плеер и сбрасываем все настройки. Закрываем плеер. запускаем плеер - настройки - полный экран - выбираем монитор для полного экрана Монитор2 - включаем "Переключать режим монитора в полноэкранном режиме" и оставляем в строке Default значение 60 hz 1920x1080 - Применить закрываем плеер и .... Монитор2 переходит почему то в режим 1650х1080 60Гц (у него тоже в списках есть такое поддерживаемое разрешение) Почему так происходит: В MainFrm.cpp много чего поменялось и выкинулось за ненадобность, но есть/остался такой код в OnCreate() CStringW strFS = s.strFullScreenMonitor; GetCurDispMode(s.dm_def, strFS); Раньше этот код служил для запоминания при запуске дефолтных параметров монитора для полноэранного режима при определенных опциях в настройках (их уже нет, как и не было одно время строки Default). Есть и такой код при закрытии плеера: if (s.AutoChangeFullscrRes.bEnabled && s.fRestoreResAfterExit) { SetDispMode(s.dm_def, s.strFullScreenMonitor, TRUE); } что бы восстановить значения по дефолту и больше нигде этот s.dm_def не меняется и ес-но когда мы меняем в настройках что-то и нажимаем Применить, то ничего не происходит, следовало бы запоминать новые значения в PPageFullScreen.cpp в OnApply() s.dm_def = m_AutoChangeFullscrRes.dmFullscreenRes[0].dmFSRes; или же переделать и убрать совсем s.dm_def, а при выходе брать значение с s.AutoChangeFullscrRes.dmFullscreenRes[0].dmFSRes что еще лучше Добавлено: ----------------------- косяк №2 дано (текущие параметры экранов): Монитор1 - 1680х1050 Монитор2 - 1920х1080 запускаем плеер и сбрасываем все настройки. Закрываем плеер. запускаем плеер - настройки - полный экран - выбираем монитор для полного экрана Монитор2 (значения в таблице хоть и не активные (неактивные так как не включена опция автосмены), но меняются на 1920х1080, что хорошо) - Применить закрываем плеер Win+P - оставляем только Монитор1 запускаем плеер - настройки - полный экран - смотрим, что монитор у нас стал Текущий (т.е. Монитор1 ), неактивные параметры в таблице сменились на 1680х1050, все правильно - жмем обязательно ОК Win+P - включаем Монитор2 (расширить) запускаем плеер - настройки - полный экран - смотрим что монитор у нас остался Текущий (т.е. Монитор1 ), неактивные параметры остались 1680х1050, все правильно. И тут баг: пытаемся сменить на Монитор2 (или Монитор1) - а неактивные параметры не меняются, остаются 1680х1050. Не правильно. При включении опции автосмены частот таблица становится активной и при входе в редактирование поля списка мы видим это разрешение для Монитора2, оно действительно присутствует (видимо поддерживается), но!!! оно не нативное, и я его специально не выбирал, а значит ошибка. Пока не понял где в коде косяк | Всего записей: 2830 | Зарегистр. 22-09-2009 | Отправлено: 22:11 18-03-2018 | Исправлено: judelaw, 22:13 18-03-2018 |
|