如何在win32中获得当前分辨率?我知道我可以GetMonitorInfo
用来获取显示器的当前边界矩形,但是我怎样才能得到位深度呢?差不多,我如何获得DEVMODE
给定监视器的结构?
我正在使用 python 和 pywin32,所以专门解决这些问题的解决方案很好,但只有 winapi 调用就可以了。
除了 Dean 的回答中提到的 EnumDisplayMonitors 函数之外,您还需要GetDeviceCaps()。请参阅参数 BITSPIXEL:它为您提供每个像素的相邻颜色位数。
您需要使用EnumDisplayMonitors函数,该函数为每个监视器调用回调并传递矩形和设备上下文(包括颜色信息)。
pywin32 有win32api.EnumDisplayMonitors,它似乎在幕后使用 EnumDisplayMonitors 来返回一个与我上面提到的细节相同的列表。