C窗体及常用控件组件.ppt





《C窗体及常用控件组件.ppt》由会员分享,可在线阅读,更多相关《C窗体及常用控件组件.ppt(106页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第3部分 窗体及常用控件、组件 本部分要点:1、窗体 2、常用控件、组件 最现代的编程语言都是面向对象的。关于面向对象的编程语言主要涉及两个概念:类和对象。哪什么是类,什么是对象呢?这两个概念在现代的编程语言是比较复杂的。所有被感兴趣的东西,都是对象;类是某种类别对象的抽象。先暂时举个简单例子说明一下:我们每个人都可以看成一个对象,而所有的人组成一个类人类。对象也是类的实例。在计算机编程语言中,类可以看成是一个扩充了的结构体数据类型,其中既包含数据,也包含函数;而对象可以看成是某种结构体类型的数据。,在C#.NET中,我们将要接触的窗体、控件都是一些类的对象。在C#.NET中程序是由对象的事件
2、来驱动的。改变对象的外观及行为方式可以通过设定和修改对象的属性来做到。 对象、属性、方法和事件,是面向对象编程的基本单元。 1、对象 对象表示类的实例,如窗体,按钮,文本框等。 2、属性 属件是对象的特性它们定义对象的特征之一(如大小、颜色或屏幕位置),若要更改对象的特征,可更改其相应的属性值 3、方法 方法是对象可执行的操作。如form1.close();,4、事件是由对象识别的操作,如单击鼠标,则为鼠标单击事件,可以为其编写代码以进行响应,3.1 Form类(窗体) 窗体是编写C#的Windows应用程序的基础,窗体是用户交互的主要载体,是图形用户界面的基本组成部分。当新建一个“Windo
3、ws应用程序”时,就会显示一个设计窗体。对窗体进行设计的第一步是设置其属性。在设计时,可在“属性”窗口中执行此操作。然后即可在窗体上放置控件。 3.1.1、窗体的常用属性,3.1.2、窗体的常用方法 1、显示一个已经装入内存的窗体 1) . Show() 2) . ShowDialog(); 2、如何在代码中创建显示一个新窗体 Form2 fm = new Form2(); fm.Show(); /或者fm.ShowDialog(); 3、隐藏一个打开的窗体 .Hide() 4、关闭窗体 .close() 窗体被关闭后,窗体将被从内存中释放,不能再显示,如果要再显示,必须重新创建;如果关闭的是
4、主窗体(form1),则退出整个程序,否则只是关闭指定的非主窗体,而不是退出整个程序。,例:3.1.2-1 打开隐藏关闭窗体,public partial class Form1 : Form Form2 frm2 = new Form2(); public Form1() InitializeComponent(); private void button1_Click(object sender, EventArgs e) frm2.Show(); private void button2_Click(object sender, EventArgs e) frm2.Hide(); pri
5、vate void button3_Click_1(object sender, EventArgs e) frm2.Close(); ,private void button4_Click(object sender, EventArgs e) Close(); /或用this.close(); 3.1.3、窗体的常用事件 窗体作为对象能够对事件做出响应 1、click事件 当单击窗体时触发该事件 2、load事件 装载窗体时触发该事件 3、activate 当窗体变为活动窗体时触发该事件 例3.1.3-1:窗体装载时标题栏显示“窗体装入,背景色为蓝色”,背景色设置为蓝色;单击窗体时标题栏显
6、示“单击窗体,背景色变为紫色”,背景色设置为紫色;,private void Form1_Load(object sender, EventArgs e) this.BackColor = Color.Blue; this.Text = 窗体装入,背景色为蓝色; private void Form1_Click(object sender, EventArgs e) this.BackColor = Color.Purple ; this.Text = 单击窗体,背景色变为紫色; 其它事件还有mousemove,mousedown,mouseup等 例3.1.3-2:软件封面,3.1.4、窗体
7、的设计及布局 一、向窗体中添加组件 向窗体中添加组件的方法很多,主要有: 1)在组件栏中需要添加的组件上单击一下鼠标左键,鼠标形状发生改变。然后在窗体中再单击一下鼠标左键,就将组件添加到窗体中了。这时添加的组件以固定的大小出现在窗体中,接着可以对组件的大小进行调整。 2)在组件栏中需要添加的组件上单击一下鼠标左键,鼠标形状发生改变。然后在窗体中某个位置按下鼠标左键并拖动,松开鼠标左键后,组件就以刚才拖动的大小出现在窗体中,接着也可以对组件的大小进行调整。 3)在组件栏中双击组件,则被双击的组件会自动添加到当前默认的窗口或容器组件中。,4)在窗体中选择一个组件或多个,通过菜单命令“编辑| 复制”
8、复制到剪贴板中,然后通过菜单命令“编辑|粘贴”将剪贴板中的组件粘贴到窗体中。粘贴出来的组件与原组件具有基本一致的属性,如大小、字体等。也可以通过快捷键Ctrl+C将选中的组件复制到剪贴板中,通过快捷键Ctrl+V将剪贴板中的组件粘贴出来。如果在工具栏中添加了剪切(Cut)、复制(Copy)和粘贴(Paste)按钮,可以更快地进行操作。,二、窗体中的组件删除与复制 如果要删除窗体中的某个组件,可以先选中该组件,然后按键盘上的Delete键就可以了。也可以通过主菜单中的“编辑|删除”命令实现。此外,也可以一次选中多个组件进行删除操作。 选定多个组件的方法有: 1)按下Shift键的同时,利用鼠标左
9、键单击各个组件。同时被选中的组件四周将会出现8个灰色的正方形黑点。 2)在窗体上没有组件的地方按下鼠标左键并拖动,将会出现一个虚框。松开鼠标左键后, 该虚框“触及”到的组件就被选中了。 选定组件后就可以进行控件的复制和删除操作。,三、设置可视组件的TabOrder 设置焦点在窗体各个控件之间传递的顺序也是一个设计程序时很重要的一步。 1、可以通过设置组件的Tabindex属性来确定这种定位的顺序。 2、有一个更简单的方法,选择“视图”菜单中的“TAB键顺序”,这时每个控件边上会显示其tabindex属性值,单击控件可改动顺序 四、窗体布局 1、调整组件的大小和位置 改变组件在窗体中的大小和位置
10、可以采用下面的方法:,1)鼠标操作 利用鼠标左键单击组件,则将组件选中,这时被选中的组件四周出现8个正方形黑点。在组件上按下鼠标左键并拖动,可以方便地改变组件的位置。如果将鼠标移动到某个黑点上,鼠标形状将变成上下拖动的形状,此时可以按下鼠标左键进行拖动,改变组件的大小。 2)键盘操作 利用键盘的上()、下()、左()、右()移动键可以在窗体中选择组件。选中某个组件后,通过Ctrl+、Ctrl+、Ctrl+、Ctrl+可以改变组件的位置,通过Shift+、Shift+、Shift+、Shift+可以改变组件的大小。一般利用鼠标进行粗略地定位或大小设置,利用键盘进行精细地定位或大小设置。也可以利用
11、剪贴板对同一类型的组件进行复制,获取相同的大小。,3)统一操作 将多个组件作为一个整体进行操作 先选中要操作的所有控件,然后选择“格式”菜单, (1)、对齐,(2)、统一大小 (3)、控件间距,2、组件的锁定与解锁 一般在窗体中将组件的大小和位置安排好后,可以将组件锁定,这样就不会因为误操作而改变已经设置好的大小和位置。可以通过“格式”菜单命令中的“锁定控件”将窗体中的组件“锁定”和“解除锁定”,3.1.5、设置窗体中组件的属性 在窗体中选中单个组件后,在属性窗口中,点击“属性”按钮,就可以对其属性进行设置了。如果单个组件在窗体中不好选中,则可以在属性窗口中的对象列表组合框中选择。如果选中了多
12、个组件,则可以统一地进行属性设置。这时对象编辑器中出现的属性为选中组件的共同属性。,“属性”按钮,3.1.6、创建组件的事件处理过程 在窗体中选中某个组件后,点击属性窗口中的“事件”按钮,再找到对应事件,双击其右侧空白即可。 如果在窗体中双击某个组件,则会自动生成其默认的事件处理过程。例如,对于textbox组件来说,默认的事件就是TextChanged事件。,“事件”按钮,3.2 文本型控件 3.2.1、 Label(标签) Label(标签)控件用来显示文本,是设计应用程序时经常要用到的控件之一。 Label(标签)一般放在对象的旁边,用来标记这些对象,从而对用户的操作进行提示,也可以用来
13、显示其它信息。 一、主要属性,二、主要事件 1、onclick:单击事件 2、DoubleClick:双击事件 3、onmouseenter :当鼠标指针指向它时触发该事件; 4、onmouseleave:当鼠标指针离开它时触发该事件; onmouseenter事件与onmouseleave事件一般同时使用, 例3.2.1-1:当鼠标指向label时为突出显示,可将label字体颜色改变,当离开时恢复 font类的构造函数,font(字体名,字号,字型),用来设置字体和字号,字形,前两个参数不可省,字形参数可以省。,private void label1_MouseEnter(object s
14、ender, EventArgs e) label1.ForeColor = Color.Red; label1.Font =new Font(华文行楷,20) ; private void label1_MouseLeave(object sender, EventArgs e) label1.ForeColor = Color.Empty; /label1.ForeColor = Color.Black ; label1.Font = new Font(“宋体, 9); ,3.2.2、文本框控件(textbox) 文本框控件主要是用来输入和输出文本信息,是开发应用程序时最常用的控件。 文本
15、框可以用于单行文本,也可以显示多行文本,并为其输入或输入的文本提供单个格式化样式。 文本框显示的内容包含在Text属性中 用户可以对输入的文本内容进行删除、插入等操作,文本框还具有一些基本的行为,比如多行文本输入、剪贴板功能等 。 一、常用属性,二、常用方法 1、clear 用于清除textbox中的所有文本 例:textbox1.clear() 2、SelectedText 选中的文本 例:textbox1. SelectedText=“”,可删除选中的文本 3、undo 撤消 4、copy 将选中的文本复制到剪切板 例:textbox1.copy 5、cut 将选中的文本剪切到剪切板 例:
16、textbox1.cut 6、paste 粘贴 例:textbox1.paste,7、selectionstart 获取选择文本的起点,返回值为整型 例: textbox2.text=textbox1.selectionstart 8、selectionlength 选择文本的长度 9、SelectAll:选项中所有文本 10、focus 为控件获取焦点,即置光标 11、打开文件 例:3.2.2-1,private void button1_Click(object sender, EventArgs e) if (openFileDialog1.ShowDialog() = DialogRe
17、sult.OK ,12、保存文件(例: 3.2.2-2) if (saveFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK ,三、常用事件 例3.2.2-3:在textbox1输入内容,同时同步显示在textbox2中,private void textBox1_TextChanged(object sender, EventArgs e) textBox2.Text = textBox1.Text; 例3.2.2-4:下面我们将使用textbox控件的这些特性编写一个简单的“身份验证”程序,程序中使用了两个Labe
18、l、两个textbox和两个按钮控件。其中textbox1、textbox2的MaxLength属性值都为,textbox2的PasswordChar为*;另外textbox1限制了输入,只接收数字。 当用户在textbox1中输入个数字后,输入焦点自动跳到textbox2中;当确认textbox和textbox中的学号和密码输入正确(学号为950755,密码为123456),Ok按钮被激活,并获得输入焦点。程序界面如下图所示:,private void textBox1_TextChanged(object sender, EventArgs e) if (textBox1.Text.Len
19、gth = 6) textBox2.Focus(); private void textBox2_TextChanged(object sender, EventArgs e) if (textBox1.Text = 950755 ,private void textBox1_KeyPress(object sender, KeyPressEventArgs e) if (e.KeyChar = 0) ,例3.2.2-5:编程实现获取功能键的ASCII值 private void textBox1_KeyDown(object sender, KeyEventArgs e) textBox2.
20、Text = Convert.ToString(e.KeyValue); private void textBox1_KeyPress(object sender, KeyPressEventArgs e) textBox2.Text = Convert.ToString(Convert.ToInt16(e.KeyChar); /textBox2.Text = Convert.ToString(byte)e.KeyChar); ,例3.2.2-6:检测回车keydown,例3.2.2-7:做一个简单的文本编辑器,如下图 源代码,3.2.3 richtextbox(rtf编辑器) richtex
21、tbox的属性,方法和事件与textbox相同,但richtextbox的文本编辑功能更为强大,例:3.2.3-1 用richtextbox实现文本编辑器 源码,3.3 按钮型控件 3.3.1、button控件 按钮(Button)是Windows应用程序界面中最常用、最简单的组件之一。 一、常用属性,二、常用事件 1、click事件:当点击按钮时触发该事件 例3.3.1-1:简单密码检验,三次不对,则退出系统 if (textBox1.Text = 123456) Form2 frm2 = new Form2(); frm2.Show(); Hide(); else textBox1.Tag
22、= Convert.ToInt16( textBox1.Tag) + 1; if (Convert.ToInt16(textBox1.Tag) = 3) MessageBox.Show(对不起,密码不对,你无权使用此系统!); Application.Exit(); else MessageBox.Show(密码不对,请重新输入!); textBox1.Focus(); textBox1.SelectAll();,3.3.2单选按钮和复选框 单选按钮(RadioButton)和复选框(CheckBox)都是用来给用户提供一个选择的界面。 单选按钮必须成组出现,用户从给定的选项中只能选中一个选项
23、。 复选框可以使用户进行多项选择,提供了从若干项中选择一个、多个、全选或者不选的功能。 1、RadioButton常用属性,2、复选框checkBox1常用的属性,例3.3.2-1:设计个人信息输入界面,运行结果如图所示。要求输入姓名、性别、性格,点击“确定”按钮后把输入的信息显示在窗体上,string str=textBox1.Text ; if (radioButton1.Checked) str = str +,+ radioButton1.Text; else str = str +,+ radioButton2.Text; if (checkBox1.Checked) str = s
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 窗体 常用 经常使用 控件 组件

限制150内