浅析C#透明窗体

做一个C#透明窗体

当我第一次在视窗2000中看到C#透明窗体,就想做出这样一个窗体应该是非常难的。肯定要调用很多的API函数。当接触了.Net以后,才发现用Visual C#做出一个透明的窗体是多么简单,只要设定一个值就可以了。下面还是让我们来看看通过以下代码生成的C#透明窗体到底是什么样。

透明窗体的源代码:

  
  
  
  1. using System ;  
  2. using System.Windows.Forms ;  
  3. using System.Drawing ;  
  4. public class Form2 : Form  
  5. {  
  6. public static void Main( )  
  7. {  
  8. Application.Run( new Form2( ) );  
  9. }  
  10. public Form2( )  
  11. {  
  12. this.Location = new System.Drawing.Point( 100 , 100 ) ;  
  13. this.Cursor = System.Windows.Forms.Cursors.Hand;  
  14. // 定义在窗体上,光标显示为手形  
  15. this.Text = "透明的WinForm窗体!";  
  16. // 定义窗体的标题名称  
  17. this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;  
  18. // 定义窗体的开始显示位置是屏幕的中间  
  19. this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;  
  20. // 窗体的边界是Fixed3D类型  
  21. this.ForeColor = System.Drawing.SystemColors.Desktop;  
  22. //以桌面的前景色作为窗体的前景色  
  23. this.Font = new System.Drawing.Font ( "宋体", 9 ) ;  
  24. // 定义字体类型,大小  
  25. this.BackColor = System.Drawing.Color.Blue;  
  26. // 定义背景色为蓝色  
  27. this.ClientSize = new System.Drawing.Size( 440 , 170 ) ;  
  28. // 设置窗体的大小  
  29. // Opacity属性设立窗体的透明程度,只对于视窗2000有效  
  30. this.Opacity = 0.60 ;  
  31. }  
  32. }  

小结:
以上的代码其实和第一个例子的代码有很多相似,只是在Form2 Class中多定义了一些属性。

1)."this" 关键字,我想大家都注意到了这个关键字,那么到底该如何理解他。举例如下:当我在自我介绍的时候(其实就是在定义我的属性),我会说"我的名字叫 xx","我的年龄是xx","我的邮箱是xx"……你可能注意到"我的"这二个字,他就是指我本人--王天。同样的道理在程序设计中,"this"关键字就是指向一个对象的实例。所有在上面代码中"this.Font"、"this.Text"就是在设定当前或者正在运行的Form2实例的属性。

2).再看看上面的代码,在程序中又导入了一名称空间--System.Drawing。通过这个名称空间定义的类,就可以更好的设计对象,处理颜色和大小。

3).下面通过下表来具体说明一下在上面程序中设立的属性的具体含义。  以上介绍C#透明窗体。

【编辑推荐】

  1. 浅谈C# Connection对象
  2. C#实现PrintPage方法
  3. 利用Visual C#和C#语言特性
  4. C#管道技术学习经验
  5. 概述C#复合控件构建

网页标题:浅析C#透明窗体
地址分享:http://www.shufengxianlan.com/qtweb/news21/370671.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联