C# winform 双屏显示

 双屏显示1
// 利用WinForm中的Screen类,即可比较方便地实现多窗体分别在多个屏幕上显示。
        //•获取当前系统连接的屏幕数量: 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));
        //•让窗体在第2个屏幕上显示:
        //this.Left = ((Screen.AllScreens[1].Bounds.Width - this.Width) / 2);
        //this.Top = ((Screen.AllScreens[1].Bounds.Height - this.Height) / 2);
        private void showOnMonitor(int showOnMonitor)
        {
            Screen[] sc;
            sc = Screen.AllScreens;
            if (showOnMonitor >= sc.Length)
            {
                showOnMonitor = 0;
            }
            this.FormBorderStyle = FormBorderStyle.None; //无边框全屏显示
            this.StartPosition = FormStartPosition.Manual;
            this.Location = new Point(sc[showOnMonitor].Bounds.Left, sc[showOnMonitor].Bounds.Top);  
            //this.Location = new Point(((sc[showOnMonitor].Bounds.Width-this.Width)/2), ((sc[showOnMonitor].Bounds.Height-this.Height)/2));
            // If you intend the form to be maximized, change it to normal then maximized.               
            //this.WindowState = FormWindowState.Normal;
            this.WindowState = FormWindowState.Maximized;//最大化窗口

        }

如果接双显卡时showOnMonitor 参数等于0为主屏,1为扩展屏

 

 双屏显示2
 1  private void showOnMonitor2()
 2         {
 3             Screen[] sc;
 4             sc = Screen.AllScreens;
 5             //get all the screen width and heights 
 6             Form1 f = new Form1();
 7             f.FormBorderStyle = FormBorderStyle.None;
 8             f.Left = sc[1].Bounds.Width;
 9             f.Top = sc[1].Bounds.Height;
10             f.StartPosition = FormStartPosition.Manual;
11             f.Location = sc[1].Bounds.Location;
12             Point p = new Point(sc[1].Bounds.Location.X, sc[1].Bounds.Location.Y);
13             f.Location = p;
14             f.WindowState = FormWindowState.Maximized;
15             f.Show();
16         }
17 
18 接入双显卡时sc[0]为主屏、sc[1]扩展屏

 

一个窗体双屏显示
  this.Location = new Point(0,0);            
            Screen[] sc;
            sc = Screen.AllScreens;
            this.Width = (sc[0].Bounds.Width + sc[1].Bounds.Width);//+20;
            this.Height = (sc[0].Bounds.Height); //+200;
            this.FormBorderStyle = FormBorderStyle.None; //边框样式
            webBrowser1.Width = sc[0].Bounds.Width;
            webBrowser1.Height = sc[0].Bounds.Height;
            webBrowser1.Location = new Point(sc[0].Bounds.Location.X, sc[0].Bounds.Location.Y);            
            webBrowser1.Url = new Uri("http://www.google.com.hk");


            webBrowser2.Width = sc[1].Bounds.Width;
            webBrowser2.Height = sc[1].Bounds.Height;
            webBrowser2.Location = new Point(sc[1].Bounds.Location.X, sc[1].Bounds.Location.Y);
            webBrowser2.Url = new Uri("http://www.baidu.com");

 

posted @ 2012-06-13 14:56  ミ茹此茹此↘  Views(9959)  Comments(0Edit  收藏  举报