实例041-设置窗体尺寸-获取所有桌面尺寸

上一节讲到,通过C#的类Screen获取屏幕尺寸的方法。可以通过链接下载

由于上一节讲到的方法仅仅适用于一个电脑屏幕的情况,如果电脑接了多个屏幕,将仅仅只能获取到第一个屏幕的尺寸。

这节我们还用Screen这个类,来实现获取电脑所接的所有屏幕的尺寸。

预习一下知识,通过如下的代码可以获取工作区屏幕的尺寸。

            textBox2.Text = Screen.PrimaryScreen.WorkingArea.Height.ToString();
            textBox1.Text = Screen.PrimaryScreen.WorkingArea.Width.ToString();

由于一台电脑有可能接多个显示屏,这里获取多个显示屏的尺寸还是通过Screen这个类进行实现。

属性
AllScreens	
获取系统上所有显示器的数组。
BitsPerPixel	
获取与数据的一个像素相关联的内存位数。
Bounds	
获取显示的边界。
DeviceName	
获取与显示关联的设备名称。
Primary	
获取一个值,该值指示某个显示是否为主设备。
PrimaryScreen	
获取主显示。
WorkingArea	
获取显示器的工作区。 工作区是显示器的桌面区域,不包括任务栏、停靠窗口和停靠工具栏。

 

方法
Equals(Object)	
获取或设置一个值,该值指示指定的对象是否等于该 Screen。
FromControl(Control)	
在 Screen 中检索包含指定控件的最大部分的显示器。
FromHandle(IntPtr)	
检索包含该对象(被指定句柄所引用)的最大部分的显示器的 Screen。
FromPoint(Point)	
检索包含指定点的显示器的 Screen。
FromRectangle(Rectangle)	
检索包含矩形的最大部分的显示器的 Screen。
GetBounds(Control)	
检索包含指定控件的最大部分的显示器的边界。
GetBounds(Point)	
检索包含指定点的显示器的边界。
GetBounds(Rectangle)	
检索包含指定矩形最大部分的显示器的边界。
GetHashCode()	
计算并检索对象的哈希代码。
GetType()	
获取当前实例的 Type。(继承自 Object)
GetWorkingArea(Control)	
检索包含指定控件的最大区域的显示器工作区。 工作区是显示器的桌面区域,不包括任务栏、停靠窗口和停靠工具栏。
GetWorkingArea(Point)	
检索与指定点最接近的工作区。 工作区是显示器的桌面区域,不包括任务栏、停靠窗口和停靠工具栏。
GetWorkingArea(Rectangle)	
检索包含指定矩形最大部分的显示器的工作区。 工作区是显示器的桌面区域,不包括任务栏、停靠窗口和停靠工具栏。
MemberwiseClone()	
创建当前 Object 的浅表副本。(继承自 Object)
ToString()	
检索表示此对象的字符串。

 

 

      int index;
      int upperBound; 
  
      // Gets an array of all the screens connected to the system.
  
  
      Screen [] screens = Screen.AllScreens;
      upperBound = screens.GetUpperBound(0);
  
      for(index = 0; index <= upperBound; index++)
      {
  
          // For each screen, add the screen properties to a list box.
  
  
          listBox1.Items.Add("Device Name: " + screens[index].DeviceName);
          listBox1.Items.Add("Bounds: " + screens[index].Bounds.ToString());
          listBox1.Items.Add("Type: " + screens[index].GetType().ToString());
          listBox1.Items.Add("Working Area: " + screens[index].WorkingArea.ToString());
          listBox1.Items.Add("Primary Screen: " + screens[index].Primary.ToString());
  
      }

 

程序运行结果如下,我的电脑一共接了2个显示屏:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值