У меня есть один рабочий стол и один ноутбук (Windows 10).Размер монитора, установленного на рабочем столе, составляет 24 дюйма.
Они имеют одинаковое разрешение (1920 на 1080), и я установил одинаковый коэффициент масштабирования в Windows 10.
Я не использую функцию Movewindowили другие вещи, чтобы установить размер, однако, размер диалога в ноутбуке и на рабочем столе отличается.Это приводит к тому, что элементы управления в моем программном обеспечении перекрывают друг друга.
, пожалуйста, дайте мне знать, если я сообщу другие настройки !!
Спасибо.
Извините, мой вопрос не является конкретным, я добавляю две картинки.
В ноутбуке настройка Windows перекрывается настройкойDICOM.Конечно, я могу сделать элементы управления не перекрывающимися, когда я непосредственно использую «Movewindow» в диалоговом окне, но я хочу знать, почему два диалоговых окна имеют разный размер (одинаковое разрешение (1920 x 1080), одинаковый коэффициент масштабирования в Windows 10).На рабочем столе диалоговое окно печати имеет размер 791 x 632, в латопе диалоговое окно печати имеет размер 911 x 816.
Я проверю DPI-Awareness.Спасибо за ваши комментарии!
Я узнаю об этом явлении.В ноутбуке разрешение составляет 1920 х 1080, однако значение, рекомендуемое Windows 10, составляет 125%.Тогда я изменяю соотношение на 100%. Я думаю, что оно работает с более высоким разрешением.
Я использую этот код для получения разрешения.
MONITORINFO mi;
::ZeroMemory(&mi, sizeof MONITORINFO );
mi.cbSize = sizeof MONITORINFO;
if( ::GetMonitorInfo(hMonitor, &mi))
В ноутбуке, когда я использую 100% размер текста, приложений и других элементов в Scale и layout, тогда ширина mi.rcMonitor = 2400, если я изменяюзначение отношения до 125% (какие окна рекомендуют), затем ширина mi.rcMonitor = 1920
Я не знаю, как изобразить 2400 * 1350 в мониторе 1920 * 1080, поэтому я изучу это!