您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 国内外标准规范 > 第5章Windows应用程序开发.
第5章Windows应用程序开发Windows窗体是用于MicrosoftWindows应用程序开发基于.NET框架的新平台。此框架提供一个有条理的、面向对象的、可扩展的类集,得以开发丰富的Windows应用程序。另外,Windows窗体可作为多层分布式解决方案中的本地用户界面。5.1开发应用程序的步骤利用VisualC#开发应用程序一般包括建立项目、界面设计、属性设计、代码设计等步骤。1.建立项目在VisualStudio.NET开发环境中选择“文件”菜单,选择“新建”选项中的“项目”,如图5.1所示。图5.1“新建项目”对话框1.建立项目在“项目类型”列表框指定为“VisualC#项目”,在“模板”列表框里指定“Windows应用程序”作为模板,表示将以VisualC#作为程序设计语言,建立一个基于Windows界面的应用程序。同时在“位置”和“名称”列表框选择文件的保存位置和设定项目文件的名字。然后,单击“确定”,返回VisualStudio.NET的主界面,如图5.2所示。图5.2集成开发环境5.1开发应用程序的步骤2.界面设计在VisualStudio.NET的主界面,系统提供了一个缺省的窗体。可以通过工具箱向其中添加各种控件来设计应用程序的界面。具体操作是用鼠标按住工具箱需要添加的控件,然后拖放到窗体中即可。本例向窗体中分别添加2个button控件、3个label控件和3个textBox控件,调整各个控件的大小和位置如图5.3所示。图5.3应用程序设计界面5.1开发应用程序的步骤3.设置属性首先,在窗体中选中控件。然后在属性窗口设置该控件相应的属性。如表5.1所示。表5.1控件属性5.1开发应用程序的步骤4.编写程序代码进入开发环境的代码编辑器。编写代码如下:staticvoidMain(){Application.Run(newForm1());}privatevoidbutton1_Click(objectsender,System.EventArgse){longop1,op2,result;if((textBox1.Text==)||(textBox2.Text==)){MessageBox.Show(this,null,msg,MessageBoxButtons.OK,MessageBoxIcon.Information);return;}4.编写程序代码try{op1=Convert.ToInt64(textBox1.Text);op2=Convert.ToInt64(textBox2.Text);result=op1+op2;textBox3.Text=Convert.ToString(result);}catch(Exceptionel){MessageBox.Show(this,el.Message,msg,MessageBoxButtons.OK,MessageBoxIcon.Warning);}}privatevoidbutton2_Click(objectsender,System.EventArgse){this.Close();}4.编写程序代码同时,系统将自动生成以下代码。privateSystem.Windows.Forms.Labellabel1;privateSystem.Windows.Forms.Labellabel2;privateSystem.Windows.Forms.Labellabel3;privateSystem.Windows.Forms.Buttonbutton1;privateSystem.Windows.Forms.Buttonbutton2;privateSystem.Windows.Forms.TextBoxtextBox1;privateSystem.Windows.Forms.TextBoxtextBox2;privateSystem.Windows.Forms.TextBoxtextBox3;5.1开发应用程序的步骤6.保存项目在“文件”菜单,单击“全部保存”或在工具条中单击“保存”按钮。5.程序运行与调试程序运行如图5.4所示。如果运行出错或者运行结果不正确,则查找错误,修正代码后运行。图5.4应用程序运行5.2窗体窗体是标准窗口、多文档界面(MDI)窗口、对话框或图形化例程的显示表面。可以将控件放入窗体用来定义用户界面。窗体是对象,这些对象可以定义其外观的属性、定义其行为的方法以及定义其与用户的交互的事件。通过设置窗体的属性以及编写响应其事件的代码,可自定义该对象以满足应用程序的要求。在Windows窗体项目内,窗体是用户交互的主要载体。通过组合不同控件集和编写代码,可从用户得到信息并响应该信息、使用现有数据存储、以及查询并写回到用户本地计算机上的文件系统和注册表中。窗体可以在“代码编辑器”中创建,也可以使用“Windows窗体设计器”创建和修改窗体。5.2.1创建Windows应用程序项目在“文件”菜单上选择“新建”,然后选择“项目”。在左侧窗格中,选择所需语言。在右侧窗格中,选择“Windows应用程序”。“Windows窗体设计器”打开,显示所创建项目,如图5.5所示。图5.5创建的项目5.2.1创建Windows应用程序项目系统包含三种样式窗体:(1)单文档界面(SDI):例如,MicrosoftWindows中包括的“写字板”应用程序就是SDI类型的界面。在“写字板”中,只能打开一个文档;打开另一个文档自动关闭一个已经打开的文档。(2)多文档界面(MDI):例如,MicrosoftWord、MicrosoftExcel等就是多文档界面(MDI)应用程序。(3)资源管理器样式界面:例如,Windows资源管理器。Windows应用程序可能需要多个窗体,可以向项目添加多个窗体。添加从“Forms”类继承的Windows窗体,只要在“解决方案资源管理器”中,右击项目并选择“添加”,然后选择“Windows窗体”。添加从以前创建的窗体类继承的Windows窗体只要在“解决方案资源管理器”中,右击项目并选择“添加”,然后选择“继承的窗体”。在“Windows窗体设计器”内,可查看项目内的窗体及其控件。5.2.2选择启动窗体从“新建项目”对话框中选择“Windows应用程序”所创建的窗体,在默认情况下将成为启动窗体。启动窗体可以根据需要进行设置或更改,在“解决方案资源管理器”中,右击项目并选择“属性”,“项目”属性页打开。选择“通用”属性,从“启动对象”下拉列表中选择要作为启动窗体的窗体。5.2.3窗体属性1.Visible属性窗体的可见性通常由Visible属性控制。在事件中,如果希望Windows应用程序的主窗体在应用程序启动时不可见,将会发现将它的Visible属性设置为假的方法无效,因为通常启动窗体的生存期决定了应用程序的生存期,只要将应用程序的启动变为一个模块,这样就可以随意使窗体可见(和不可见),因为当“关闭”模块时,应用程序的生存期也随之结束。2.TopMost属性TopMost属性控制窗体是否为最顶端的窗体。请注意,即使最顶端的窗体不处于活动状态,它也会浮在其他非最顶端窗体之前。在设计时使窗体成为Windows窗体应用程序中最顶端的窗体,只要在“属性”窗口中将TopMost属性设置为true。以编程方式使窗体成为Windows窗体应用程序中最顶端的窗体,只要采用将TopMost属性设置为true的代码:例如:publicvoidMakeOnTop(){myTopForm.TopMost=true;}5.2.3窗体属性3.FormBorderStyle属性当确定Windows窗体的外观时,有几种边框样式可供选择,如表5.2。表5.2窗体的边框风格注意:所有上述边框样式(除“无”设置外),都在标题栏的右侧有一个“关闭”框。5.2.3窗体属性4.Location属性Location属性值可指定窗体在计算机屏幕上的显示位置。它以像素为单位指定窗体左上角的位置。还需要设置StartPosition属性,以指示显示区域的边界。Windows应用程序的StartPosition属性的默认设置是“WindowsDefaultLocation”,该设置通知操作系统在启动时根据当前硬件计算该窗体的最佳位置。另一种选择是将StartPosition属性设置为Center,然后在代码中更改窗体的位置。●使用“属性”窗口定位窗体在“属性”窗口中,从下拉菜单选择窗体。将窗体的StartPosition属性设置为Manual。为Location属性键入值(以逗号分隔)来定位该窗体,其中第1个数字(X)是到显示区域左边界的距离(像素),第2个数字(Y)是到显示区域上边界的距离(像素)。●以编程方式定位窗体在运行时,将窗体的Location属性设置为Point来定义窗体的位置,例如:Form1.Location=newPoint(100,100);或使用Left子属性(用于X坐标)和Top子属性(用于Y坐标)更改窗体位置的X坐标和Y坐标。例如,将窗体的X坐标调整为300个像素点:Form1.Left=300;4.Location属性●窗体中控件位置控件是窗体上的一个组件,用于显示信息或接受用户输入。大多数窗体都是通过将控件添加到窗体表面来定义控件的位置。●将控件拖动到窗体上在“工具箱”中,单击所需控件并将其拖动到窗体上。也可双击“工具箱”中的控件,将该控件按其默认大小添加到窗体的左上角。在运行时可动态地将控件添加到窗体中。在下面的示例中,当单击“按钮”(Button)控件时,“文本框”(TextBox)控件将添加到窗体中。在窗体的类的内部,在处理按钮的Click事件的方法中,插入类似于以下内容的代码,以添加对控件变量的引用,设置控件的“位置”,然后添加该控件:privatevoidbutton1_Click(objectsender,System.EventArgse){TextBoxmyText=newTextBox();myText.Location=newPoint(25,25);this.Controls.Add(myText);}5.3Windows控件使用5.3.1常用控件和属性表5.3列出了常用的Windows窗体控件。表5.3常用Windows控件5.3.1常用控件和属性控件都有很多属性,并且大多数控件的属性都派生于System.Windows.Forms.Control类,所以它们都有一些共同的属性。见表5.4所示。表5.4Control类的常见属性5.3.1常用控件和属性控件对用户或应用程序的某些行为做出相应的响应,这些行为称做事件。Control类的常见事件如表5.5所示:表5.5Control类的常见事件5.3.2Label控件和LinkLabel控件Windows窗体Label控件用于显示用户不能编辑的文本或图像。Label控件也可以用来为其他控件定义访问键。在标签(Label)控件中定义访问键时,用户可以按ALT键和指定字符将焦点移动到Tab键顺序中的下一个控件上。因为标签无法接收焦点,所以焦点自动移动到Tab键顺序中的下一个控件上。标签中显示的标题包含在Text属性中,文本在标签内的对齐方式可以通过Alignment属性设置。5.3.2Label控件和LinkLabel控件【例5.3】向带标签的控件分配访问键。打开项目和窗体,先建立一个标签,然后按任意顺序绘制控件,并将该标签的TabIndex属性设置为比另一个控件小1。将该标签的UseMnemonic属性设置为true。在该标签的Text属性中使用“and”符(&)为该标签分配访问键。例如:label1.UseMnemonic=true;label1.Text=&Print;label2.UseMnemonic=true;label2.Text=&Copy&&Paste;5.3.2Label控件和LinkLabel控件【例5.4】使用LinkLabel控件链接到另
本文标题:第5章Windows应用程序开发.
链接地址:https://www.777doc.com/doc-2110283 .html