win32: получить текущий DEVMODE монитора - PullRequest
2 голосов
/ 17 ноября 2010

Как узнать текущее разрешение в win32? Я знаю, что могу использовать GetMonitorInfo, чтобы получить текущий ограничивающий прямоугольник монитора, но как я могу также получить битовую глубину? Как получить структуру DEVMODE данного монитора?

Я использую python и pywin32, поэтому решения, адресованные именно этим, хороши, но подойдут только вызовы winapi.

Ответы [ 2 ]

1 голос
/ 17 ноября 2010

В дополнение к функции EnumDisplayMonitors, упомянутой в ответе Дина, вам необходимо GetDeviceCaps () .См. Параметр BITSPIXEL: он дает вам количество смежных цветовых битов для каждого пикселя.

0 голосов
/ 17 ноября 2010

Вы захотите использовать функцию EnumDisplayMonitors , которая вызывает обратный вызов для каждого монитора и передает прямоугольник и контекст устройства (который включает информацию о цвете).

pywin32 имеет win32api.EnumDisplayMonitors , который, похоже, использует EnumDisplayMonitors под обложками, чтобы вернуть список с такими же деталями, как я упоминал выше.

...