庞大资源库的计算机教程网站!
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
首页 操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数 据 库 办公系列 路由技术 网络原理 网络应用
认证考试 安全技术
首页>程序设计>C#语言>系统编程>正文
资料搜索
Google搜索
Google
返回上级列表

推荐文章

快速保存网页中所有图片的方法
Windows中让光驱巧妙“隐身”技
防范非法用户入侵Win 2000/XP系
两款比较典型的ASP木马防范方法
有关表格边框的css语法整理
Windows XP中可以被禁用的服务
SQL Server导出导入数据方法
Javascript所有对象的属性的获
网页(HTML)中的特殊字符
与篮球共舞,尽显模式本色
QQ病毒的手工清除方法
Photoshop为极品美女打造性感睫
天衣无缝:IIS与PHP水火也相容
SQL Server存储过程编写和优化

用Visual C#来获得计算机的分辨率

 作者:阿虎    日期:2005-8-8 9:54:55
字号选择〖 〗/ 双击滚屏 单击停止   
   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 ( ) ) ;

}
}

 四. 总结:

   可见Visual C#要完全利用其语言的功能,没有.Net FrameWork SDK支持是无法完成的。也就是说只有你精通了.Net FrameWork SDK这个内容丰富、功能强大的软件开发包,你也才有可能称上一个真正的.Net程序语言高手。

上一篇:C#中调用API    下一篇:Visual C#的剪切板编程  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 阿虎
信息来源: 网络 录入时间: 2005-8-8 9:54:55
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿