cWindows窗体应用程序设计.ppt
《cWindows窗体应用程序设计.ppt》由会员分享,可在线阅读,更多相关《cWindows窗体应用程序设计.ppt(70页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Windows窗体应用程序设计,8.1 窗体设计 8.2 常用的控件设计 8.3 多文档窗体 8.4 窗体设计的事件机制,窗体设计,窗体(Form)是一个窗口或对话框,是存放各种控件(包括标签、文本框、命令按钮等)的容器,可用来向用户显示信息。 8.1.1 创建Windows窗体应用程序的过程 添加一个窗体的操作步骤是:选择“项目”|“添加Windows窗体”菜单命令,在出现的 “添加新项”对话框中,选中“Windows窗体”,输入相应的名称(这里为Form2.cs),单击“添加”按钮。 一个Windows应用程序可以包含多个窗体。,窗体类型 在C#中,窗体分为如下两种类型: (1)普通窗体,
2、也称为单文档窗体(SDI),前面所有创建的窗体均为普通窗体。普通窗体又分为如下两种: 模式窗体。这类窗体在屏幕上显示后用户必须响应,只有在它关闭后才能操作其他窗体或程序。 无模式窗体。这类窗体在屏幕上显示后用户可以不必响应,可以随意切换到其他窗体或程序进行操作。通常情况下,当建立新的窗体时,都默认设置为无模式窗体。 (2)MDI父窗体,即多文档窗体,其中可以放置普通子窗体。,窗体的常用属性 1. 布局属性 2. 窗口样式属性 3. 外观样式属性 4. 行为属性 8.1.4 窗体的常用事件 8.1.5 窗体的常用方法,1.Form1窗体: (1)设计界面,(2)事件过程:,Form1.cs文件:
3、 /引用部分 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms;,namespace Proj8_1 public partial class Form1 : Form/从Form类继承Form1窗体 public Form1()/Form1类构造函数 InitializeComponent(); /调用初始化方法,其代
4、码在Form1.Designer.cs文件中 private void button1_Click(object sender, EventArgs e) Form myform = new Form1_1();/定义Form1_1类对象 myform.ShowDialog(); /以模式窗体方式调用 private void button2_Click(object sender, EventArgs e) Form myform = new Form1_2();/定义Form1_2类对象 myform.Show(); /以无模式窗体方式调用 ,Form1.Designer.cs 文件: n
5、amespace Proj8_1 partial class Form1 / /必需的设计器变量。 / private System.ComponentModel.IContainer components = null; / /清理所有正在使用的资源。 / /如果应释放托管资源,为true; /否则为false。 protected override void Dispose(bool disposing) /重写基类Dispose()方法 if (disposing /调用基类的Dispose()方法 ,#region Windows 窗体设计器生成的代码 / /设计器支持所需的方法 -
6、不要 /使用代码编辑器修改此方法的内容。 / private void InitializeComponent()/初始化方法 this.button1 = new System.Windows.Forms.button(); this.button2 = new System.Windows.Forms.button(); this.SuspendLayout(); / button1 this.button1.Font = new System.Drawing.Font(宋体, 9F, System.Drawing.FontStyle.Bold, System.Drawing.Graphi
7、csUnit.Point, (byte)(134); this.button1.Location = new System.Drawing.Point(28, 21); this.button1.Name = button1; this.button1.Size = new System.Drawing.Size(117, 33); this.button1.TabIndex = 0; this.button1.Text = 调用模式窗体; this.button1.UseVisualStyleBackColor = true; this.button1.Click += new System
8、.EventHandler(this.button1_Click);,/ button2 this.button2.Font = new System.Drawing.Font(宋体, 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, (byte)(134); this.button2.Location = new System.Drawing.Point(28, 69); this.button2.Name = button2; this.button2.Size = new System.Drawin
9、g.Size(117, 33); this.button2.TabIndex = 1; this.button2.Text = 调用无模式窗体; this.button2.UseVisualStyleBackColor = true; this.button2.Click += new System.EventHandler(this.button2_Click); / Form1 this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); this.AutoScaleMode = System.Windows.Forms.Aut
10、oScaleMode.Font; this.ClientSize = new System.Drawing.Size(169, 128); this.Controls.Add(this.button2); this.Controls.Add(this.button1); this.Name = Form1; this.StartPosition =System.Windows.Forms.FormStartPosition.CenterScreen; this.Text = Form1; this.ResumeLayout(false); ,#endregion private System.
11、Windows.Forms.button button1;/私有字段 private System.Windows.Forms.button button2;/私有字段 ,2.Form1_1窗体: (1)设计界面 (2)事件过程:无,3.Form1_1窗体: (1)设计界面 (2)事件过程:无,Program.cs文件 : using System; using System.Collections.Generic; using System.Windows.Forms; namespace Proj8_1 static class Program / / 应用程序的主入口点。 / STATh
12、read static void Main() Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1(); /启动窗体为Form1 ,按F5键或单击工具栏中的按钮运行本项目。 上机调试运行结果。,窗体上各事件的引发顺序 当一个窗体启动时,执行事件过程的次序如下: (1)本窗体上的Load事件过程。 (2)本窗体上的Activated事件过程。 (3)本窗体上的其他Form级事件过程。 (4)本窗体上包含对象的相应事件过程。
13、 一个窗体被卸载时,执行事件过程的次序如下: (1)本窗体上的Closing事件过程。 (2)本窗体上的FormClosing事件过程。 (3)本窗体上的Closed事件过程。 (4)本窗体上的FormClosed事件过程。,焦点与Tab键次序 焦点(Focus)是指当前处于活动状态的窗体或控件。,要将焦点移到当前窗体中的textBox1文本框,可以使用以下命令: textBox1.Focus();,控件概述 控件是包含在窗体上的对象,是构成用户界面的基本元素,也是C#可视化编程的重要工具。 工具箱中包含了建立应用程序的各种控件,根据控件的不同用途分为若干个选项卡,可根据用途单击相应的选项卡,
14、将其展开,选择需要的控件。,常用的控件设计,大多数控件共有的基本属性如下 : 1)Name属性 2)Text属性 3)尺寸大小(Size)和位置(Location)属性 4)字体属性(Font) 5)颜色属性(BackColor和ForeColor) 6)Cursor属性 7)可见(Visible)和有效(Enabled)属性,富文本框控件 提供类似Microsoft Word能够输入、显示或处理具有格式的文本。 【例8.2】 设计一个窗体,说明富文本框的使用方法。,Form2窗体: (1)设计界面 (2)事件过程: private void Form2_Load(object sender,
15、 EventArgs e) richtextBox1.LoadFile(H:C#2005ch8file.RTF, RichtextBoxStreamType.RichText); ,H:C#2005ch8file.RTF,将本窗体设计为启动窗体,运行本项目,在富文本框RichtextBox1中显示H:C#2005ch8file.rtf文件的内容。,分组框控件 面板控件,复选框控件 属于选择类控件,用来设置需要或不需要某一选项功能。在运行时,如果用户用鼠标单击复选框左边的方框,方框中就会出现一个“”符号,表示已选取这个功能了。 复选框的功能是独立的,如果在同一窗体上有多个复选框,用户可根据需要选
16、取一个或几个。,主要属性: Checked:获取或设置一个布尔值,该值指示是否已选中控件。如果为True,则指示选中状态;否则为False(默认值)。 主要事件: Click,【例8.3】 设计一个窗体,说明复选框的应用。,Form3窗体: (1)设计界面 (2)事件过程: private void button1_Click(object sender, EventArgs e) if (checkBox1.Checked ,运行界面,单选按钮控件 单选按钮是多选一,只能从多个选项中选择一个,各选项间的关系是互斥的。 单选按钮使用时经常用多个控件构成一个组,同一时刻只能选择同一组中的一个单选
17、按钮,因此,经常将单选按钮放在一个分组框中构成一个选项组。,设计一个窗体,说明单选按钮的使用方法。,Form4窗体: (1)设计界面 (2)事件过程: private void button1_Click(object sender, EventArgs e) if (radiobutton3.Checked) MessageBox.Show(您选对了,这是微软公司开发的操作系统, 信息提示, MessageBoxButtons.OK); else if (radiobutton1.Checked | radiobutton4.Checked) MessageBox.Show(您选错了,这是程
18、序设计语言, 信息提示, MessageBoxButtons.OK); else MessageBox.Show(您选错了,这是数据库管理系统, 信息提示, MessageBoxButtons.OK); ,运行界面,图片框控件 用于在窗体的特殊位置上放置图形信息,也可以在其上放置多个控件,因此它可作为其他控件的容器 。,主要属性: Image获取或设置图片框中显示的图像。在运行时再使用Image.FromFile函数加载图像。,设计一个窗体,以选择命令按钮方式显示春、夏、秋、冬4个季节的图片。,Form5窗体: (1)设计界面 (2)事件过程: private void button1_Cli
19、ck(object sender, EventArgs e) pictureBox1.Image = Image.FromFile(H:C#2005ch8spring.jpg); private void button2_Click(object sender, EventArgs e) pictureBox1.Image = Image.FromFile(H:C#2005ch8summer.jpg); private void button3_Click(object sender, EventArgs e) pictureBox1.Image = Image.FromFile(H:C#20
20、05ch8fall.jpg); private void button4_Click(object sender, EventArgs e) pictureBox1.Image = Image.FromFile(H:C#2005ch8winter.jpg); ,组合框控件 从一个列表中一次只能选取或输入一个选项,其主要特点是具有带向下箭头的方框。 在程序运行时,按下此按钮就会下拉出一个列表框供用户选择项目。另外,还可以在组合框上方的框中输入数据。,DropDownStyle=Simple DropDownStyle=DropDown DropDownStyle=DropDownList,组合框
21、的Items属性是最重要的属性,它是存放组合框中所有项的集合,对组合框的操作实际上就是对该属性即项集合的操作。,组合框的事件,设计一个窗体,通过一个文本框向合框中添加项。,Form6窗体: (1)设计界面 (2)事件过程: private void button1_Click(object sender, EventArgs e) if (textBox1.Text != ) if (!comboBox1.Items.Contains(textBox1.Text) comboBox1.Items.Add(textBox1.Text); /不添加重复项 ,运行界面,列表框控件 是一个为用户提供选
22、择的列表,用户可从列表框列出的一组选项中用鼠标选取一个或多个所需的选项。 如果有较多的选择项,超出规定的区域而不能一次全部显示时,C#会自动加上滚动条。,与组合框类似。,设计一个窗体,其功能是在两个列表框中移动数据项。,Form7窗体: (1)设计界面 (2)事件过程: private void Form7_Load(object sender, EventArgs e) listBox1.Items.Add(清华大学); listBox1.Items.Add(北京大学); listBox1.Items.Add(浙江大学); listBox1.Items.Add(南京大学); listBox1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- cwindows 窗体 应用 利用 运用 程序设计
限制150内