第5章 常用控件_第1页
第5章 常用控件_第2页
第5章 常用控件_第3页
第5章 常用控件_第4页
第5章 常用控件_第5页
已阅读5页,还剩86页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五章常用控件5.1案例:个人简历问题提出期望效果5.1案例:个人简历5.1案例:个人简历案例分析主要功能技术点5.2窗体5.2.1建立新项目建立一个windows应用程序项目5.2.1建立新项目VisualStudio2005IDE(集成编程环境)解决方案资源管理器5.2.1建立新项目控件控件是包含在窗体对象内的对象属性(Attribute)反映控件的外观特征方法(Method)是该控件所固有的处理某项事务的动作事件(Event)是该控件所固有的处理某项事务的动作反应5.2.2设置窗体属性【实作任务】参照表5-1,设置Form1窗体的部分属性 5.2.2设置窗体属性属性在属性栏中设置属性称为设计时属性设置通过编程的方式设置属性称为运行时属性设置控件的属性值大多数可以在程序中读取、设置、更改5.2.2设置窗体属性【多学一点】控件命名控件名(对象名)与变量名一样,是在程序中调用该控件的唯一依据,在其作用域内(通常是一个类中)具有唯一性。控件名与C#变量名等标识符的命名规则相同,支持中文命名。5.2.3添加窗体事件窗体事件Windows程序是靠事件驱动的可以使用“属性”窗口指定在代码中要处理哪些事件注意:要删除某个自己添加的事件,要先在控件的属性窗口中找到相应事件,去掉添加添加的事件代码,再删除代码文件中的事件代码,否则很容易出错。5.2.3添加窗体事件添加窗体事件【实作任务】给窗体MyForm1添加一个load事件,我们希望在窗体初始化时设置窗体的大小、标题和背景颜色。5.2.3添加窗体事件窗体load事件初始代码usingSystem;//引用系统命名空间……namespaceWindowsControl//项目命名空间{publicpartialclassMyForm1:Form{publicMyForm1()//窗体初始化,名称与类名必须相同

{InitializeComponent();//系统初始化方法,不能更改

//可以自己加入在窗体初始化时需执行的代码

}

//自己可以在此添加代码}}5.2.3添加窗体事件在Load事件中添加如下代码:privatevoidMyForm1_Load(objectsender,EventArgse){

//窗体大小,宽400点,高300点(像素点)

this.Size=newSize(400,300);this.Text="这是一个可变大小的窗体";//设置为大小可调节的窗体

this.FormBorderStyle=FormBorderStyle.Sizable;

//使用默认控件颜色便于使用windows桌面主题效果

this.BackColor=SystemColors.Control;}5.2.3添加窗体事件Size:(Height,Width)FormBorderStyle枚举成员说明None无边框FixedSingle固定的单行边框Fixed3D固定的三维边框FixedDialog固定的对话框样式的粗边框Sizable可调整大小的边框FixedToolWindow不可调整大小的工具窗口边框SizableToolWindow可调整大小的工具窗口边框BackColor:系统预定义的颜色类SystemColors5.2.4添加其它控件添加控件有三种方式:从工具箱拖动在工具箱中双击通过已有控件复制5.2.4添加其它控件【实作任务】5.2.5添加窗体【实作任务】弹出菜单

->“添加”->“Windows窗体”5.2.5添加窗体窗体调用在MyForm1添加一个按钮buttonCreate,设置其Click事件如下:

privatevoidbuttonCreate_Click(objectsender,EventArgse){TextFormtxtForm=newTextForm();//创建窗体实例

txtForm.Show();//显示txtForm}注意:1、可以用ShowDialog方法,将窗体显示为模式对话框。如:txtForm.ShowDialog();1、关于从类创建实例的相关知识在面向对象部分会详细讲。2、现在有两个窗体,在本章中如果没有明确说明,所用窗体是指MyForm1。5.2.5添加窗体【多学一点】

主窗体在本案例中,第一个启动的窗体是MyForm1,它是主窗体,其它窗体一般都通过该窗体中的控件调用,当它关闭时会终止整个程序的运行。其余窗体也可以用其Close()方法关闭,但它不会关闭主窗体,也不会终止应用程序。//Program.cs

staticclassProgram{[STAThread]staticvoidMain(){Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);

Application.Run(newForm1());}}//由此可见,主窗体的调用机制是5.2.5添加窗体【多学一点】添加现有项5.2窗体【自我练习】5.3C#资源管理项目资源:应用程序所需的二进制数据、文本文件、音频或视频文件、字符串表、图标、图像、XML文件或任何其他类型的数据。5.3.1向项目中添加资源5.3.1向项目中添加资源将需要的资源添加到项目资源文件Resources.resx中使用项目资源中的图像设置窗体背景

this.BackgroundImage=WindowsControl.Properties.Resources.C800600;

其中“WindowsControl”是当前项目名称,也可以省略.5.3.1向项目中添加资源在应用程序中,可以用以下方式使用资源://使用项目资源中的图像设置窗体背景this.BackgroundImage=WindowsControl.Properties.Resources.C800600;其中“WindowsControl”是当前项目名称,也可以省略。5.3.2编辑资源可以使用二进制编辑器以十六进制或ASCII格式在二进制级别上编辑资源文件(包括.resx文件)。可以使用图像编辑器编辑作为链接的资源存储的图标、光标以及

.jpeg和

GIF文件。5.3.3ImageList组件ImageList组件用于存储图像,这些图像随后可由控件显示。ImageList组件的主要属性是

Images,它包含关联的控件将要使用的图片。每个单独的图像可通过其索引值ImageIndex或其键值ImageKey来访问。所有图像都将以同样的大小显示,该大小由

ImageSize属性设置,默认为16*16。较大的图像将缩小至适当的尺寸。因为其中图像大小一样,常用于图标显示5.4鼠标与键盘事件5.4.1鼠标事件【实例】鼠标测试任务:通过鼠标让窗体动起来,在窗体上单击鼠标左键将窗体逐步放大,单击鼠标右键将窗体逐步缩小,并在标题栏说明当前窗体大小,双击窗体就关闭该窗体,结束应用程序5.4.1鼠标事件实例5.1鼠标状态测试5.4.1鼠标事件MouseEventArgs常用属性属性说明Button获取曾按下的是哪个鼠标按钮。Clicks获取按下并释放鼠标按钮的次数。Delta获取鼠标轮已转动的制动器数的计数。制动器是鼠标轮的一个凹口。Location获取鼠标在产生鼠标事件时的位置。X

获取鼠标在产生鼠标事件时的

x坐标。Y

获取鼠标在产生鼠标事件时的

y坐标。5.4.1鼠标事件MouseButtons枚举值枚举成员说明None未曾按下鼠标按钮。Left鼠标左按钮曾按下。Right鼠标右按钮曾按下。Middle鼠标中按钮曾按下。XButton1第

1个

XButton曾按下。XButton2第

2个

XButton曾按下。5.4.1鼠标事件鼠标事件鼠标事件处理程序接收参数类型说明ClickEventArgs释放鼠标按钮时发生此事件。MouseClickMouseEventArgs使用鼠标单击控件时发生此事件。如果需要在发生单击时获取鼠标的有关信息,可处理此事件。DoubleClickEventArgs双击控件时发生此事件MouseDoubleClickMouseEventArgs使用鼠标双击控件时发生此事件。如果需要在发生双击时获取鼠标的有关信息,可处理此事件。MouseDownMouseEventArgs当鼠标指针在控件上且按下按钮时发生此事件MouseEnterEventArgs当鼠标指针进入控件工作区时发生此事件MouseHoverEventArgs当鼠标指针停留在控件上时发生此事件MouseLeaveEventArgs当鼠标指针离开控件工作区时发生此事件MouseMoveMouseEventArgs当鼠标指针在控件上移动时发生此事件MouseUpMouseEventArgs当鼠标指针在控件上且释放按钮时发生此事件MouseWheelMouseEventArgs如果用户在控件具有焦点时滚动鼠标轮,则发生此事件。5.4.1鼠标事件鼠标事件发生顺序单击一次鼠标按钮所引发事件的顺序双击鼠标按钮所引发事件的顺序MouseDown事件Click事件MouseClick事件MouseUp事件MouseDown事件Click事件MouseClick事件MouseUp事件MouseDown事件DoubleClick事件MouseDoubleClick事件MouseUp事件5.4.1鼠标事件实例5.2鼠标状态测试2代码分析5.4.2键盘事件KeyDown事件,当用户按物理键时将引发此事件,事件发生一次KeyPress事件,当所按的键产生字符时将引发此事件。例如,当用户按

Shift和小写的“a”键时,将产生大写字母“A”字符。当用户按住同一个键时,该事件可以发生多次。

KeyUp事件,当用户松开键时,KeyUp事件发生一次5.4.2键盘事件实例5.3键盘按键测试代码分析5.4.2键盘事件KeyEventArgs类的主要成员成员说明Alt获取一个值,该值指示是否曾按下

Alt键。Control获取一个值,该值指示是否曾按下

Ctrl键。Shift获取一个值,该值指示是否曾按下

Shift键。KeyCode获取

KeyDown或

KeyUp事件的键盘代码。KeyData获取

KeyDown或

KeyUp事件的键数据。KeyValue获取

KeyDown或

KeyUp事件的键盘值。Modifiers获取

KeyDown或

KeyUp事件的修饰符标志。这些标志指示按下的

Ctrl、Shift和

Alt键的组合。5.4鼠标与键盘事件【自我练习】自己设计一个标签,加载一幅小图片,它可以跟随鼠标光标移动的标签,也可以用光标键移动。5.5常用控件准备个人简历设计界面【实作任务】重新设置窗体属性5.5.1LabelLabel控件用于显示用户不能编辑的文本或图像Label控件不能接收焦点Anchor属性将控件锚定到其父控件后,可确保当调整父控件的大小时锚定的边缘与父控件的边缘的相对位置保持不变。其默认值为Top、Left。Dock属性在调整控件的父控件大小时如何自动调整控件的大小,其默认值None。5.5.1Label【实作任务】【多学一点】控件的可见性(访问级别)Modifiers属性5.5.2ButtonButton控件允许用户通过单击来执行操作,即调用

Click事件处理程序按钮上显示的文本包含在

Text属性中。Button控件还可以使用

Image和

ImageList属性显示图像。窗体AcceptButton属性将指定Button控件为“接受”按钮(也称作默认按钮)。窗体CancelButton属性指定

Button控件为“取消”按钮。每当用户按

Esc键时,即单击“取消”按钮。5.5.2Button【实作任务】【多学一点】控件失效与隐藏Enable属性,控件是否可用,默认为TrueVisible属性,控件是否可见,默认为TrueHide()方法,隐藏控件,相当于Visible属性为FalseShow()方法,显示控件,相当于Visible属性为True5.5.3TabControl本实例窗体中的核心控件是选项卡控件TabControlTabControl的最重要的属性是

TabPages,它包含单独的选项卡TabPage对象单击选项卡时,将为该

TabPage对象引发

Click事件5.5.3TabControlTabControl的重要属性和方法成员说明属性SizeMode指示选项卡如何进行大小调节,属性ImageList

在选项卡的标签部位显示图标属性Multiline

创建多行选项卡属性Enabled

启用或禁用选项,设置为true或false属性Appearance选项卡显示为按钮,设置为

Buttons或

FlatButtons方法Add

添加选项卡方法Remove

移除选项卡方法Clear

移除所有选项卡5.5.3TabControl【多学一点】以编程方式添加、移除选项卡stringtitle="TabPage"+(tabControl1.TabCount+1).ToString();TabPagemyTabPage=newTabPage(title);tabControl1.TabPages.Add(myTabPage);tabControl1.TabPages.Remove(tabControl1.SelectedTab);5.5.3TabControl【实作任务】5.5.4TextBoxTextBox常用成员成员说明属性Text用于输入或显示可见字符数据属性ReadOnly文本框中的文本是否为只读属性PasswordChar用于屏蔽单行

TextBox控件中的密码字符属性Numeric指示输入是否必须全部是数字,默认为

false属性Multiline是否为多行TextBox控件属性ScrollBars多行

TextBox控件中出现哪些滚动条属性SelectionStar获取或设置选定的文本起始点属性SelectionLength获取或设置文本框中选定的字符数属性SelectedText获取或设置一个值,该值指示当前选定的文本属性MaxLength获取或设置可在文本框控件的最大字符数属性TextLength获取控件中文本的长度5.5.4TextBoxTextBox常用成员方法Clear从文本框控件中清除所有文本方法Copy将当前选定内容复制到剪贴板方法Cut将当前选定内容移动到剪贴板方法Paste用剪贴板的内容替换文本框中的当前选定内容方法Focus为控件设置输入焦点事件TextChanged当用户更改

TextBox的文本时发生事件Enter进入控件时发生事件Leave在输入焦点离开控件时发生事件Validating在控件正在验证时发生事件Validated在控件完成验证时发生5.5.4TextBox【实作任务】privatevoidtextName_Validating(objectsender,CancelEventArgse)privatevoidtextName_Validated(objectsender,EventArgse)【自我练习】5.5.4TextBox【多学一点】控件焦点与焦点有关的控件属性、方法与事件成员说明属性Focused控件是否有输入焦点(只读)属性CanFocus控件是否可以接收焦点(只读)属性ContainsFocus控件或它的一个子控件当前是否有输入焦点(只读)属性CanSelect是否可以选中控件(只读)属性ActiveControl获取或设置容器控件上的活动控件方法Focus为控件设置输入焦点方法Select激活控件事件Enter进入控件时发生事件Leave在输入焦点离开控件时发生事件..::Validating在控件正在验证时发生事件Validated在控件完成验证时发生5.5.5MaskedTextBoxMaskedTextBox控件是一个增强的

TextBox控件,它支持用于接受或拒绝用户输入的声明性语法。Mask是

MaskedTextBox类的默认属性,可用掩码输入框设置该值MaskFull属性来验证用户是否输入了所有必需的输入内容。Text属性将始终检索按照掩码和

TextMaskFormat属性设置格式的用户输入5.5.5MaskedTextBoxMaskedTextBox控件主要的属性属性说明PromptChar用于提示用户进行输入的字符,默认为下划线

(_)AllowPromptAsInputPromptChar是否可以作为有效数据由用户输入AsciiOnly是否接受

ASCII字符集以外的字符Mask获取或设置运行时使用的输入掩码MaskCompleted所有必需的输入是否都已输入到输入掩码中MaskFull所有必需和可选的输入是否都已输入到输入掩码中TextMaskFormat决定原义字符和提示字符是否包括在Text属性中ValidatingType获取或设置用于验证用户输入的数据的数据类型BeepOnError当用户键入了它拒绝的字符时是否发出系统警告声5.5.5MaskedTextBoxMaskFormat枚举值枚举成员说明IncludePrompt返回用户输入的文本以及提示字符的任意实例IncludeLiterals(默认值)返回用户输入的文本以及掩码中定义的任意文本字符IncludePromptAndLiterals返回用户输入的文本及掩码字符以和提示字符ExcludePromptAndLiterals只返回用户输入的文本5.5.5MaskedTextBox【实作任务】【多学一点】掩码Mask5.5.6RadioButtonRadioButton控件为用户提供由两个或多个互斥选项组成的选项集单击

RadioButton时,其

Checked属性为true,并且调用

Click事件Checked属性值更改时,将引发

CheckedChanged事件可将Appearance属性设置为

Button通过使用

Image和

ImageList属性显示图像5.5.6RadioButton在一个容器(如

Panel、GroupBox或窗体)内绘制单选按钮即可将它们分组【实作任务】5.5.7CheckBoxCheckBox控件指示某个特定条件是处于打开状态还是处于关闭状态Checked属性返回true或falseCheckState属性返回

Checked或

Unchecked【实作任务】5.5.8comboBoxComboBox控件用于在下拉组合框中显示数据SelectedIndex属性返回一个整数值,该值与选择的列表项相对应。SelectedItem属性与

SelectedIndex类似,但它返回项本身,通常是一个字符串值。Count属性反映列表的项数5.5.8comboBoxDropDownStyle属性控制显示给用户的界面。简单的下拉列表框Simple下拉列表框DropDown下拉列表框DropDownList(默认)使用Items集合的

Add、Insert、Clear或

Remove方法在

ComboBox控件中添加或删除项。可以在设计器中使用

Items属性向列表添加项若Sorted属性设置为true,列表项将以排序顺序显示,当控件为数据绑定时不能排序。5.5.8comboBox【实作任务】5.5.9ListBox和CheckedListBoxListBox控件显示一个项列表SelectionMode属性提供单项选择或多重选择MultiColumn为true时,多列显示项ScrollAlwaysVisible为true时,无论项数多少都将显示滚动条SelectionMode确定一次可以选择多少列表项5.5.9ListBox和CheckedListBoxSelectedItem属性、SelectedIndex属性分别表示当前选中的项和其索引号,Count属性反映列表的项数Items、SelectedItems和SelectedIndices属性分别表示列表的项的集合、当前选取项的集合、当前选取项的索引集合CheckedListBox控件5.5.9ListBox和CheckedListBox【实作任务】【多学一点】数据集合Items使用Items集合的

Add、Insert、Clear或

Remove方法在ListBox控件中添加或删除项使用Sorted对列表项排序可在设计器中使用

Items属性向列表添加项使用DataSource属性(数据绑定)添加项。5.5.9ListBox和CheckedListBox【自我练习】5.5.10ListViewListView控件显示了带图标的项的列表该控件具有四种视图模式:LargeIcon、SmallIcon、List和DetailsItemsSelectedItemsMultiSelectCheckBoxes5.5.11DateTimePickerDateTimePicker控件,用户可以从日期或时间列表中选择单个项。当

ShowCheckBox属性设置为true时,该控件中的选定日期旁边将显示一个复选框。该控件的

MaxDate和

MinDate属性确定日期和时间的范围。如果你希望

DateTimePicker作为选取或编辑时间(而不是日期)的控件出现,ShowUpDown属性设置为true,并将

Format属性设置为

Time。5.5.11DateTimePicker显示格式CustomFormatLong、Short、Time或

Custom设置日期时间值ValuedateTime.Value=newDateTime(2001,10,20);dateTime.Value=DateTime.Now.AddDays(1);获取日期时间值ValuedateTime.Value.DayOfWeek.ToString()【实作任务】5.5.12NumericUpDownMinimum和

Maximum指定控件允许值的范围

Increment指定

Value属性递增或递减的值Accelerations属性决定用户连续按向上或向下箭头时该控件在数字间移动的速度。设置数字的显示格式的属性:DecimalPlacesHexadecimalThousandsSeparator5.5.12NumericUpDown【实作任务】注意:1、即使值在窗体中显示为十六进制值,对

Value属性执行的任何测试所测试的都是其十进制值。2、获取NumericUpDown控件的值用Value属性,而不是Text属性,其数据类型为Decimal。5.5.13PictureBoxPictureBox控件用于显示BMP、GIF、JPEG、ICO或图元文件图标格式的图像所显示的图片由

Image属性确定,该属性可在运行时或设计时设置。也可以通过设置

ImageLocation属性,然后使用

Load方法加载图像。5.5.13PictureBoxBorderStyle属性提供一个标准或三维的边框SizeMode属性控制图像在显示区域中的剪裁和定位设PictureBoxSizeMode枚举中的值ClientSize属性来更改显示区域的大小(在运行时使用

)枚举成员说明图像将放置在控件的左上角;如果图像比控件大,则会对其下边缘和右边缘进行剪裁。(默认值)CenterImage图像将在控件中居中;并对图片超出部分进行剪裁AutoSize控件的大小将调整为图像的大小StretchImage图像拉伸,其大小将调整为控件的大小5.5.13PictureBox以编程方式设置图像使用

Image的

FromFile方法设置

Image属性。在下面的示例中,图像位置的路径设置是c:\pic文件夹。pictureBox1.Image=Image.FromFile(@“c:\pic\Image.gif”);通过设置

ImageLocation属性,然后使用

Load方法加载图像。myPhoto.ImageLocation=@"c:\pic\Image.gif";//设置

URLmyPhoto.Load();//加载图片或者myPhoto.Load(@“c:\pic\Image.gif”);5.5.13PictureBox清除图像

if(pictureBox1.Image!=null){pictureBox1.Image.Dispose();//释放图像内存pic

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论