C#获取显示器分辨率

Visual C#做为微软推出的新一代程序开发语言,.Net框架中的一个重要组成部分,他既具有Visual C++的功能强大的特点,又具有Visual Basic的操作简单,易上手的优点。但Visual C#又和Visual C++不一样,他没有属于自身的类库,但.Net框架为这些.Net的程序开发语言提供一个大家都可以使用的类库.Net FrameWork SDK。Visual C#实现很多功能就是通过调用这个类库来完成的。本篇文章将通过开发一个程序,来看看Visual C#是否是强大功能并操作简单的特点。这个程序的功能就是获得计算机的分辨率。

一. 本文程序设计和运行的软件环境:

   (1).微软公司视窗2000服务器版

   (2)..Net FrameWork SDK Beta 2

二. 程序设计的思路以及重要步骤的解决方法:

   首先要得到计算机屏幕的工作区域。在程序中,这种处理是通过调用.Net FrameWork SDK中的名称空间System.Windows.Forms中的Screen类来实现的。Screen类的主要作用是在一个系统中描述一个显示器设备或 者多个显示器设备。在这个类中定义了一个可以获得计算机工作区域的方法GetWorkingArea()。那么什么又是计算机的工作区域?计算机的工作区 域其实就是计算机的桌面区域,这包括任务栏、工作栏等。那么如何通过获得计算机工作区域,来得出计算机的分辨率?下面来看一下 GetWorkingArea()的一种使用方法:

   public static Rectangle GetWorkingArea ( Control ) ;

   这种方法的作用是获得指定组件的最大工作区域,即最大的桌面区域。由于这个方法的返回值是Rectangle结构,根据他的Width属性可以得到屏幕 宽,根据Height属性可以得到屏幕的长,当然这些宽和长都是用象素来表示的。至此有产生另外一个问题,GetWorkingArea()方法调用的变 量又该如何设定?其实这个变量的设定是非常简单的,根据GetWorkingArea()的功能可得,你可以设定成窗体中任何一个可视组件变量,在本文的 程序中,是如下设定的:

   rect = Screen.GetWorkingArea ( this ) ;

   同样,你也可以按照改变为下面得语句,但这二者实现得功能是相同的:

   rect = Screen.GetWorkingArea ( button1 ) ;

   注释:button1是在程序窗体中放置的一个组件
三. 本文程序的源代码以及程序运行界面:

   通过上面的介绍,不难得到Visual C#获得计算机分辨率的程序代码,如下:

using System ;
using System.Drawing ;
using System.Collections ;
using System.ComponentModel ;
using System.Windows.Forms ;
using System.Data ;
public class Form1 : Form
{
private Button button1 ;
private System.ComponentModel.Container components = null ;

public Form1 ( )
{
InitializeComponent ( ) ;
}
protected override void Dispose( bool disposing )
{
if( disposing )
{
if ( components != null )
{
components.Dispose ( ) ;
}
}
base.Dispose ( disposing ) ;
}

private void InitializeComponent ( )
{
this.button1 = new Button ( ) ;
this.SuspendLayout ( ) ;
this.button1.Location = new System.Drawing.Point ( 144 , 96 ) ;
this.button1.Name = "button1" ;
this.button1.TabIndex = 0 ;
this.button1.Text = "得到机器的分辨率" ;
this.button1.Size = new System.Drawing.Size ( 140 , 50 ) ;
this.button1.Location = new System.Drawing.Point ( 75 , 90 ) ;
this.button1.Click += new System.EventHandler ( this.button1_Click ) ;
this.ClientSize = new System.Drawing.Size ( 292 , 273 ) ;
this.Controls.Add ( button1 ) ;
this.Name = "Form1" ;
this.Text = "用Visual C#获得机器的分辨率!" ;
this.ResumeLayout ( false ) ;
}

static void Main ( )
{
Application.Run ( new Form1 ( ) ) ;
}

private void button1_Click ( object sender , System.EventArgs e )
{
file://创建一个矩形对象
Rectangle rect = new Rectangle ( ) ;
file://通过一个函数对这个矩形对象赋值,这些值就是屏幕的工作区域
rect = Screen.GetWorkingArea ( this ) ;
MessageBox.Show ( "本机器的分辨率是" + rect.Width.ToString ( ) + "*" + rect.Height.ToString ( ) ) ;

}
}

**********************************

System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height.ToString()+"*"+ System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width.ToString()
就是显示器的分辨率了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值