Winform程序实现多显示屏、多屏幕显示的2种方法

时间:2021-09-01 05:42:52

这篇文章主要介绍了Winform窗口实现多显示屏显示的2种方法,本文直接给出了实现代码,并对其中的一些重要参数做了解释,需要的朋友可以参考下。

一台主机连接了2台显示器(2个显卡),要求一个程序的两个窗体在不同的显示器上显示:显示器1 显示From1,显示器2  显示From2。代码及说明如下:

Form1不需要变更代码,From2添加如下代码:

// 方法一: From2 frm2 = new From2(); if (Screen.AllScreens.Count() != 1) { frm2.Left = Screen.AllScreens[0].Bounds.Width; frm2.Top = 0; frm2.Size = new System.Drawing.Size(Screen.AllScreens[1].Bounds.Width, Screen.AllScreens[1].Bounds.Height); } // 方法二: this.Left = ((Screen.AllScreens[1].Bounds.Width - this.Width) / 2); this.Top = ((Screen.AllScreens[1].Bounds.Height - this.Height) / 2); this.Size = new System.Drawing.Size(Screen.AllScreens[1].Bounds.Width, Screen.AllScreens[1].Bounds.Height);

说明:

获取当前系统连接的屏幕数量: Screen.AllScreens.Count();

获取当前屏幕的名称:string CurrentScreenName = Screen.FromControl(this).DeviceName;

获取当前屏幕对象:Screen CurrentScreen = Screen.FromControl(this);

获取当前鼠标所在的屏幕:Screen CurrentScreen = Screen.FromPoint(new Point(Cursor.Position.X, Cursor.Position.Y));

出处:

Winform程序实现多显示屏、多屏幕显示的2种方法