双监视器屏幕捕获问题

本文关键字:问题 屏幕 监视器 | 更新日期: 2023-09-27 18:16:22

我有双显示器,我正在开发一种产品,可以让你记录你的电脑屏幕。目前,我正在使用以下代码:

Rectangle = Rectangle. empty;foreach (System.Windows.Forms。System.Windows.Forms.Screen.AllScreens){screenArea = Rectangle。联盟(screenArea screen.Bounds);}

不可避免地(在我的情况下)记录了整个桌面。使用两个屏幕的宽高比,其中"screenArea"是被记录的区域。是否有一种方法可以指定程序运行的活动监视器?

谢谢你的帮助,克里斯托弗。

双监视器屏幕捕获问题

也许这能帮上忙。

如何确定我的。net Windows窗体程序在哪个监视器上运行?

还有PrimaryScreen属性:

http://msdn.microsoft.com/en-us/library/system.windows.forms.screen.primaryscreen (v = vs.110) . aspx

您可以使用此代码获得屏幕的数组。

Screen[] screens = Screen.AllScreens;

你也可以找出你在哪个屏幕上,通过运行这段代码(这是你在windows窗体)

Screen screen = Screen.FromControl(this); //this is the Form class

总之,看看Screen类和静态助手方法,它们可能会对您有所帮助。

MSDN链接,没有太多…我建议你自己在代码中搞乱。