我们在上网时经常看到一些需要你填写内容的文本框当获得焦点时会改变颜色,当失去焦点时又恢复原色;在一些窗体应用程序中也有类似的应用。那么,在C#窗体应用程序中能不能实现该效果呢?当然能。本文将借助TextBox控件的Enter和Leave事件实现这一效果。
1、问题描述
TextBox(文本框)的默认背景色为白色,在程序运行过程中,文本框获得焦点后将改变颜色,失去焦点后恢复原来的白色。
2、实现方法
(1)在VS Studio中新建Windows应用程序,分别添加两个Label控件、两个TextBox控件及两个Button控件,将两个Label控件的Text属性分别修改为“学号”和“姓名”;将两个Button控件的Text属性分别修改为“确定”和“退出”。
(2)首先选中第一个TextBox控件(默认名称为textBox1),找到其Enter事件,双击该事件(此操作将在程序中添加其事件处理程序)后,在其中添加如下代码:
textBox1.BackColor = Color.LightCyan; //当textBox1获得焦点时,背景色变为LightCyan(淡蓝绿色)
(3)回到设计界面,扔选中第一个TextBox控件(textBox1),找到其Leave事件,双击该事件后,在其中添加如下代码:
textBox1.BackColor = Color.White; //当textBox1失去焦点时,背景色恢复为White(白色)
(4)用同样的方法为第二TextBox控件(textBox2)添加Enter事件处理程序和Leave事件处理程序,其代码分别为:
Enter事件处理程序:
textBox2.BackColor = Color.LightCyan; //当textBox2获得焦点时,背景色变为LightCyan(淡蓝绿色)
Leave事件处理程序:
textBox2.BackColor = Color.White; //当textBox2失去焦点时,背景色恢复为White(白色)
最终运行效果如下图所示:
新闻热点
疑难解答