如果我正在使用C#开发基于Windows.Forms的屏幕保护程序,我该如何支持多个监视器?显然,我需要一种方法来枚举监视器并为它们创建表单,或者只需淡入黑色?有人解决了这个问题吗?
任何想法都很有帮助,什么是最好的方法?
如果我正在使用C#开发基于Windows.Forms的屏幕保护程序,我该如何支持多个监视器?显然,我需要一种方法来枚举监视器并为它们创建表单,或者只需淡入黑色?有人解决了这个问题吗?
任何想法都很有帮助,什么是最好的方法?
我推荐从CodeProject的这篇文章,它帮助我创建了我的第一个屏幕保护程序,并讨论了多重监视器的支持。
System.Windows.Forms.Screen
类提供了有关显示器数量及其边界的所有信息。属性AllScreens
是一个不错的起点。
for (int i = Screen.AllScreens.GetLowerBound(0); i <= Screen.AllScreens.GetUpperBound(0); i++)
{
ScreensaverFormList[i].Bounds = Screen.AllScreens[i].Bounds;
}