boq*_*apt 10 windows winapi multiple-monitors windows-shell windows-7
当您在屏幕分辨率对话框中按下识别按钮时,Windows会在每个监视器上显示大的白色监视器编号.很容易在Windows XP(使用EnumDisplayDevices)中以编程方式与监视器坐标一起找到它们,但在Windows 7上它已经坏了.我怎样才能做到这一点?
有人知道吗?
Windows 不提供允许应用程序获取显示设置应用程序使用的数字的功能。这些数字本身仅特定于显示设置应用程序,在系统或用于查询/设置显示拓扑的CCD API中没有任何意义。
最好的选择是应用程序在提示用户选择显示器时定义自己的分配索引的标准。
我从来不想知道 Windows 应用程序中显示器的数量,但您可以使用参数值调用GetSystemMetrics 函数SM_CMONITORS来获取桌面上显示显示器的数量。
我GetSystemMetrics主要使用参数值SM_CXVIRTUALSCREEN、 、 来调用 Windows 应用程序函数SM_CYVIRTUALSCREEN,SM_XVIRTUALSCREEN以SM_YVIRTUALSCREEN避免完全或部分在显示区域之外打开应用程序窗口。如果用户将显示区域扩展到多个监视器,但并非所有监视器都打开,则应用程序窗口可能仍然不可见。
具有参数值的SystemParametersInfo函数对于了解应用程序窗口的位置以及主屏幕上的宽度和高度可以有多大,而不会被始终位于顶部的其他窗口(栏)部分隐藏也非常有用。SPI_GETWORKAREAuiAction
如果您的 Windows 应用程序需要来自监视器的更多信息,另请参阅GetMonitorInfo 函数。
| 归档时间: |
|
| 查看次数: |
2463 次 |
| 最近记录: |