vb.net – 获取屏幕分辨率

前端之家收集整理的这篇文章主要介绍了vb.net – 获取屏幕分辨率前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要使用我的应用程序更改屏幕分辨率。

如何:

>读取当前分辨率
>使用我的应用程序更改它,然后在退出时返回到当前。

谢谢,
Furqan

1)如何读取当前屏幕分辨率?

获取当前的屏幕分辨率是容易的并且内置到框架中,而不必深入研究如GetSystemMetrics API。 Screen类包含有关连接到系统的所有显示设备的信息。为了确定主显示器的分辨率,您可以使用以下内容

Dim screenWidth as Integer = Screen.PrimaryScreen.Bounds.Width
 Dim screenHeight as Integer = Screen.PrimaryScreen.Bounds.Height

要处理多个显示器,请查看Screen.AllScreens属性,该属性返回与附加到系统的每个显示器相对应的Screen对象数组。然后,您可以通过遍历Screen对象数组来确定(使用上述代码)附加到计算机的每个显示器的分辨率。

2)如何从VB.NET应用程序更改当前的屏幕分辨率?

改变屏幕分辨率有点困难。在进一步之前,我会提醒您,调整用户显示分辨率的应用程序是意想不到的,可能是creates a hostile user environment.我知道我不会使用未经许可改变我的屏幕分辨率的应用程序,我会想到很久很久使用一个需要我这样做的。如果你想要制作一个屏幕保护程序,可能会有更好的和更简单的方法来做你想要的。话虽如此,如果您愿意从Windows API P / Invoke一些功能,可以从VB.NET完成。

如果您只关注单个显示器的情况,最简单的方法是使用ChangeDisplaySettings功能,允许您指定默认显示器的图形模式(仅用户主要显示器)。

要处理多个显示器的情况,您需要使用EnumDisplayDevices功能获取有关连接到计算机的所有显示设备的信息,以及更改特定屏幕的ChangeDisplaySettingsEx功能

查看pinvoke.net如何在VB.NET中声明Windows API调用的签名。尽管我尚未验证他们提供的示例代码,Google搜索已经开始this thread

要在您的应用程序运行时修改屏幕分辨率,然后在用户退出程序时还原屏幕分辨率,您需要在修改当前屏幕设置之前保存当前屏幕设置,然后在使用相同的方法调用时将其还原(使用相同的方法调用)应用程序退出

猜你在找的VB相关文章