注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

信息 灵感 创新

I? =Information,Inspiration,Innovation

 
 
 

日志

 
 
关于我

we are 5. Mathematics, Computation, Programming, Engineering, and Making fun of life.

网易考拉推荐

C# Windows编程入门(二)  

2010-12-13 12:53:27|  分类: C# & .NET |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

前面介绍了一下如何创建一个空白的窗体,今天要说的是像窗体中添加控件。

1.2 添加控件

这里将会向窗体中添加一个按钮和一个图片窗口(PictureBox),代码如下:

using System;

using System.Windows.Forms;

namespace MyNamespace

{

   public class MyForm : Form

   {

      private Button btnLoad;

      private PictureBox pboxPhoto;

      public MyForm()

      {

         this.Text = "Hello Form 1.2";

         // Create and configure the Button

         btnLoad = new Button();

         btnLoad.Text = "&Load";

         btnLoad.Left = 10;

         btnLoad.Top = 10;

         // Create and configure the PictureBox

         pboxPhoto = new PictureBox();

         pboxPhoto.BorderStyle =

         System.Windows.Forms.BorderStyle.Fixed3D;

         pboxPhoto.Width = this.Width / 2;

         pboxPhoto.Height = this.Height / 2;

         pboxPhoto.Left = (this.Width - pboxPhoto.Width) / 2;

         pboxPhoto.Top = (this.Height - pboxPhoto.Height) / 2;

         // Add our new controls to the Form

         this.Controls.Add(btnLoad);

         this.Controls.Add(pboxPhoto);

      }

      public static void Main()

      {

         Application.Run(new MyForm());

      }

   }

}

编译后,运行效果如下:

C Windows编程入门(二) - Castor - 趁年轻,多折腾~~

 

对程序的说明

首先引入需要使用的命名空间,虽然前面创建空白窗口没有使用命名空间,而是直接使用语句System.Windows.Forms.Application.Run(new MyForm());这样将会很麻烦,引入命名空间之后将会更省事,不用每次都写那么长的一串了。using命令有两个用处,一个是导入命名空间,另一个是为了确保某些资源被有效的回收。这里显然使用的是前一种。注意Main方法中不再像前面那样写很长的一串了。而是简单的Application.Run(new MyForm());

还可以给命名空间起个别名,例如:

using SWF=System.Windows.Forms;

这样指明完整路径时可以这样:

SWF.Application.Run(new MyForm());

虽然别名可以一直用到类,例如下面完全是可行的:

using SWFApp=System.Windows.Forms.Application;

……

SWFApp.Run(new MyForm());

但是并不推荐这么做,一般直到命名空间就结束了。在不至于产生歧义的时候不指明完整路径并不会带来任何问题,例如前面代码中直接使用Button而不是其完整的引用路径:System.Windows.Forms.Button并不会对程序产生任何问题,但是当有两个或多个命名空间包含Button类时,完整路径将显得十分重要。

下面的代码将图片窗的宽高设置为窗口的一半,并位于程序窗口中央:

pboxPhoto.Width = this.Width / 2;

pboxPhoto.Height = this.Height / 2;

pboxPhoto.Left = (this.Width - pboxPhoto.Width) / 2;

pboxPhoto.Top = (this.Height - pboxPhoto.Height) / 2;

      最后说说窗口的Control属性。

    请注意这段代码:

this.Controls.Add(btnLoad);

this.Controls.Add(pboxPhoto);

其作用是将按钮控件和图片框控件添加到窗体上。this这里指代的就是窗口本身,实际上this总是用于一个类的实例引用自身的时候。另外,如果两个控件有重叠的部分,越先添加的控件将在越前面。

  评论这张
 
阅读(1209)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016