cWindows窗体界面设计实用.pptx
《cWindows窗体界面设计实用.pptx》由会员分享,可在线阅读,更多相关《cWindows窗体界面设计实用.pptx(95页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、5.1 窗体、属性与事件窗体:向用户显示信息的可视界面。控件:显示数据或接受数据输入的相对独立的用户界面(UI)元素。事件:当用户对窗体或其中的某个控件进行操作时,将触发相应的事件,在代码中即可对这些事件进行处理。第1页/共95页5.1.1 窗体的显示与隐藏1、如何在代码中打开一个新窗体Form2fm=newForm2();fm.Show();/或者fm.ShowDialog();2、如何在代码中关闭一个窗体用法1:fm.Close();用法2:this.Close();用法3:Application.OpenFormsForm1.Close();3、如何隐藏一个打开的窗体(1)隐藏当前窗体:
2、this.Hide();(2)隐藏其它窗体:Application.OpenFormsForm1.Hide();4、如何重新显示隐藏的窗体(1)显示当前窗体:this.Show();(2)显示其它窗体:Application.OpenFormsForm1.Show();第2页/共95页5.1.2 窗体的属性设置窗体属性的方法:(1)在设计模式下设置窗体属性(2)在代码编辑模式下设置窗体属性窗体常用属性:1Text 窗体标题2StartPosition窗体首次出现的位置第3页/共95页Validating事件和Validated事件Validating事件:当控件的CausesValidatio
3、n属性为true,且该控件失去焦点时,触发该事件。注意被验证有效性的控件是失去焦点的控件,而不是获得焦点的控件。Validated事件:当控件的CausesValidation属性为True,且该控件失去焦点时,触发该事件。该事件在Validating事件之后发生,表示有效性验证已经完成。例如,假如textBox1的CausesValidation属性均为TrueprivatevoidtextBox1_Validating(objectsender,CancelEventArgse)if(textBox1.Text.Length=0)MessageBox.Show(必须在textBox1中输入
4、内容);textBox1.Focus();再将textBox1的CausesValidation属性改为False,运行观察结果。第4页/共95页5.1.3 5.1.3 鼠标事件与键盘事件常用鼠标事件1.Click:单击鼠标左键时触发2.MouseDoubleClick:双击鼠标左键时触发3.MouseEnter:鼠标进入控件可见区域时触发4.MouseMove:鼠标在控件区域内移动时触发5.MouseLeave:鼠标离开控件可见区域时触发常用键盘事件1.KeyDown:按下某个键时触发2.KeyUp:释放按键时触发3.KeyPress:KeyDown后KeyUp前触发第5页/共95页KeyD
5、own和KeyPress的区别KeyDown和KeyPress的区别是KeyDown传送的是被按下键的键盘码,而KeyPress传送被按下键的char值。一般用KeyDown、KeyUp判断是否按下了Shift、Alt、Ctrl、F1、箭头键等特殊键或者组合键,也可以判断是否按下某个字符;而KeyPress仅用于判断是否按下了某个字符。第6页/共95页例如用户在textBox1中按回车键时,可以利用KeyPress事件作相应处理:privatevoidtextBox1_KeyPress(objectsender,KeyPressEventArgse)if(e.KeyChar=(char)Key
6、s.Enter)/。【例5-1】第7页/共95页第8页/共95页private void textBox1_KeyDown(object sender,KeyEventArgs e)if(e.KeyCode=Keys.Up)MessageBox.Show(您现在按下的是向上箭头!);if(e.KeyCode=Keys.F1)MessageBox.Show(您现在按下的是功能键F1!是否需要帮助?);if(e.Alt=true&e.Shift=true&e.Control=true)MessageBox.Show(您现在按下的是组合键Ctrl+Alt+Shift!);if(e.Control=t
7、rue)switch(e.KeyCode)case Keys.A:MessageBox.Show(您现在按下的是组合键Ctrl+A!);break;case Keys.B:MessageBox.Show(您现在按下的是组合键Ctrl+B!);break;第9页/共95页 private void buttonOK_Click(object sender,EventArgs e)label1.Text=textBox1.Text;private void buttonOK_MouseEnter(object sender,EventArgs e)labelDisplay.Visible=true
8、;labelDisplay.Text=按下按钮将文本框中的内容显示于下面!;private void buttonOK_MouseLeave(object sender,EventArgs e)labelDisplay.Text=;第10页/共95页第11页/共95页5.2 Windows窗体基本控件5.2.1控件中常用的属性和方法1.常用基本属性除了书上讲的属性外,注意以下属性的用法:1)(Name):指定控件的名称,它是控件在当前应用程序中的唯一标识,代码通过该属性来访问控件2)Enabled:决定控件是否可用,取值为true时可用,取值为false时不可用3)Anchor属性:保持控件与
9、边框的距离不变4)Dock属性:让控件始终紧靠边框第12页/共95页5)Font:决定控件上文本的显示形式,包括字体名称、字号以及是否斜体、加粗和下划线等6)BackColor:设置控件的背景色7)ForeColor:设置空间的前景色,即控件上文本的颜色8)Location:定位控件9)size:指定控件的高度和宽度10)Text:11)Visible:第13页/共95页5.2.1 控件中常用的属性和方法(续)2.常用方法Focus方法:让控件获得焦点ToString方法:转换为字符串第14页/共95页Button(按钮)控件 按钮是界面中经常使用的控件。程序员使用这个控件的时候通常需要做两个
10、工作:设置按钮属性。编写Click事件方法。常用:1Text属性:显示控件文本信息例如:this.button1.Text=确定;2Click事件:单击鼠标左键时触发。例如:privatevoidbutton1_Click(objectsender,System.EventArgse)MessageBox.Show(this,你点击了确定按钮。,提示信息,MessageBoxButtons.OK,MessageBoxIcon.Information);第15页/共95页参数的含义:(1)objectsender:代表发出事件的对象,此处指button1。使用时可以直接用button1,也可以像
11、下面形式:Buttonbutton=(Button)sender;(2)System.EventArgse:封装了事件的信息。3MouseEnter事件:鼠标进入按钮区域时触发。例如:privatevoidbutton1_MouseEnter(objectsender,System.EventArgse)this.button1.BackColor=Color.Red;4MouseLeave事件:鼠标离开按钮区域时触发。例如:privatevoidbutton1_MouseLeave(objectsender,System.EventArgse)this.button1.BackColor=S
12、ystemColors.Control;第16页/共95页5.2.2 TextBox控件1.文本框控件常用的基本属性1)Text:表示文本框中显示的内容。2)MaxLength:表示用户可以在文本框控件中最多键入的字符数,默认值为32767个字符。注意,由于使用的是Unicode字符,所以对中文和英文的字符计数方法是相同的,即一个英文字符的长度为1,一个汉字字符的长度也是1。3)Multiline:表示是否可以包含多行内容。4)PasswordChar:用于指定在屏蔽TextBox控件中输入的密码字符时所要使用的符号。UseSystemPasswordChar属性第17页/共95页5.2.2
13、TextBox控件(续)2.TextBox 控件常用的基本事件TextChanged:表示文本框中的当前内容(Text属性值)更改时触发的操作。Enter:当前文本框为活动状态时触发的操作.注意:Enter和MouseEnter事件不同,MouseEnter事件表示当鼠标进入当前文本框区域内时触发操作.例:5.2第18页/共95页第19页/共95页private void textBoxUser_MouseEnter(object sender,EventArgs e)textBoxUser.Text=;private void textBoxPassword_TextChanged(obje
14、ct sender,EventArgs e)textBoxUser.ReadOnly=true;private void textBoxInformation_TextChanged(object sender,EventArgs e)buttonOK.ForeColor=System.Drawing.Color.Red;buttonOK.Size=new System.Drawing.Size(100,50);private void buttonOK_Click(object sender,EventArgs e)labelResult.Visible=true;labelResult.T
15、ext=string.Format(用户名是:0;密码是:1n输入的资料是:n2,textBoxUser.Text,textBoxPassword.Text,textBoxInformation.Text);第20页/共95页第21页/共95页5.2.3 MaskedTextBox 控件MaskedTextBox控件也叫掩码文本框,主要作用是控制输入文本的格式,如果输入的内容不满足规定的格式,则控件不会接收该输入.1.掩码文本框控件常用的属性1)PromptChar属性:指定作为占位符的字符,默认为下划线“_”。2)Mask属性:设置当前掩码文本框输入字符的格式。掩码符号见P113表5-33)
16、BeepOnError属性:键入无效字符时是否发出警告声。4)ValidingType属性(在代码方式下用):获取或设置验证类型。第22页/共95页5)InsertKeyMode属性:指示向掩码文本框输入字符时的输入模式,其属性值有:DefaultInsertOverWrite.当属性值为default时,表示输入模式由当时键盘的插入/改写状态决定。属性值为Insert时,即使键盘的Ins键被按下,也不会以改写方式输入字符。当为OverWrite时,则任何时候都是以改写方式输入字符。6)AllowPromptAsInput属性:指定是否允许将占位符看做是有效的输入字符,true为允许,fals
17、e为不允许。7)ResetOnPrompt属性:决定当输入字符与占位符相同时,是否跳过当前输入字符的位置。第23页/共95页5.2.3 MaskedTextBox 控件(续)2.掩码文本框控件常用的事件MaskInputRejected事件:当输入字符不符合掩码要求时触发的操作。TypeValidationCompleted事件:当ValidingType属性完成对输入文本的分析时触发。例5.3第24页/共95页private void MyMaskInputRejected(object sender,MaskInputRejectedEventArgs e)(MaskedTextBox)s
18、ender).ForeColor=Color.Red;/若输入不符合要求,则以红色字体显示 private void MyMaskInputReset(object sender,KeyEventArgs e)/重新输入时,以改写方式输入,并恢复正常的字体颜色 (MaskedTextBox)sender).InsertKeyMode=InsertKeyMode.Overwrite;(MaskedTextBox)sender).ForeColor=Color.FromKnownColor(KnownColor.WindowText);public FormMaskedTextBox()Initi
19、alizeComponent();maskedTextBoxBirthday.ValidatingType=typeof(System.DateTime);maskedTextBoxPhone.MaskInputRejected+=new MaskInputRejectedEventHandler(MyMaskInputRejected);maskedTextBoxPhone.KeyDown+=new KeyEventHandler(MyMaskInputReset);maskedTextBoxSalary.MaskInputRejected+=new MaskInputRejectedEve
20、ntHandler(MyMaskInputRejected);maskedTextBoxSalary.KeyDown+=new KeyEventHandler(MyMaskInputReset);第25页/共95页 private void buttonOK_Click(object sender,EventArgs e)if(maskedTextBoxUserCode.Text=-|maskedTextBoxUserName.Text=)MessageBox.Show(您还没有填写用户名或真实姓名!);maskedTextBoxUserCode.Focus();return;labelRes
21、ult.Visible=true;labelResult.Text=string.Format(新添加雇员信息如下:n+员工号:0n姓名:1n出生日期:2n电话号码:3n月薪:4,maskedTextBoxUserCode.Text,maskedTextBoxUserName.Text,maskedTextBoxBirthday.Text,maskedTextBoxPhone.Text,maskedTextBoxSalary.Text);第26页/共95页private void maskedTextBoxBirthday_TypeValidationCompleted(object send
22、er,TypeValidationEventArgs e)if(!e.IsValidInput)MessageBox.Show(您输入的日期不正确!);(MaskedTextBox)sender).Focus();(MaskedTextBox)sender).InsertKeyMode=InsertKeyMode.Overwrite;第27页/共95页补充例子注意:此例子同时演示了如何使用Tag属性。(参加工作时间掩码:0000年00月)第28页/共95页第29页/共95页5.2.4 RichTextBox控件RichTextBox控件的主要功能是进行高级文本输入和编辑,作为一般的文本输入,其
23、属性、事件与TextBox控件的大致相同。它的特殊属性和方法可以完成与word相似的文字处理功能,如改变文本、段落的显示格式,在文本中查找特定字符和字符串等。如表5-4所示P117。例5-4:创建一个可以对RTF文件进行编辑操作的windows应用程序。第30页/共95页第31页/共95页private void buttonDisplay_Click(object sender,EventArgs e)richTextBox1.Clear();richTextBox1.SelectedText=窗体使用介绍:+n;richTextBox1.SelectionBullet=true;/项目符号
24、与编号 richTextBox1.SelectionFont=new Font(隶书,14,System.Drawing.FontStyle.Bold);richTextBox1.SelectionColor=Color.OrangeRed;richTextBox1.SelectedText=读入的RTF文件为:source.rtfn;richTextBox1.SelectionFont=new Font(宋体,14,System.Drawing.FontStyle.Bold);richTextBox1.SelectionColor=Color.LightSalmon;richTextBox1
25、.SelectedText=保存RTF文件为:result.rtfn;richTextBox1.SelectionFont=new Font(隶书,14,System.Drawing.FontStyle.Bold);richTextBox1.SelectionColor=Color.BlueViolet;richTextBox1.SelectedText=可以使用锁定功能保护文本中的关键字符,以免被错误地修改n;richTextBox1.SelectionFont=new Font(隶书,14,System.Drawing.FontStyle.Bold);richTextBox1.Select
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- cWindows 窗体 界面设计 实用
限制150内