TextBox组件(文本框组件)是一种常用的
也是比较容易掌握的组件
应用程序主要使用它来接收使用者于输入文字信息
在前面内容中已经或多或少的接触到TextBox组件
本节就来详细探讨一下Visual 中TextBox组件的使用方法
一TextBox组件TextBox类
当我们使用Visual Basic Net集成开发环境开发应用程序时在从【工具箱】的【Windows窗体】选项卡中向Form的设计窗体拖入一个TextBox组件的后我们可能并没有感觉到即使时这样一个简单的操作Visual Basic Net都做了很多幕后工作主要工作和步骤如下
首先实例化SystemWindowsFormsTextBox类并根据拖动到窗体的位置和形状分别设定TextBox实例的各个属性
我们看到的设计窗体其实是Form类的一个实例而Form类首先是从SystemWindowsFormsForm类继承而来Form类中的成员根据使用者往窗体中拖入的组件不同而不同各个成员通过Add或AddRange方法加入到Form中这样拖入的组件才能够显示在设计窗体上
以上这些都完全不同于以前Visual Basic通过上述步骤 我们不难得到TextBox组件和TextBox类之间的关系TextBox组件是命名空间SystemWindowsForms中的TextBox类的实例在从【工具箱】的【Windows窗体】选项卡中拖入窗体的任一组件都是Net框架类库——Net Framework SDK中封装的某一个类的实例通过上述步骤也不难看出Visual Basic Net的确才是真正的面向对象(OOP)的开发语言
二TextBox类的成员
TextBox组件使用虽然比较简单但TextBox类的构成成员却是非常的丰富在一般性的编程中主要涉及到三类属性方法和事件表表和表分别是TextBox类的常用属性方法和事件及其简单说明
属性说明AcceptsReturn指示在多行TextBox组件中按ENTER键时是在组件中创建一行新文本还是激活窗体的默认按钮AcceptsTab该值指示在多行文本框组件中按TAB键时是否在组件中键入一个TAB字符而不是按选项卡的顺序将焦点移动到下一个组件AllowDrop 获取或设置一个值该值指示组件是否可以接受用户拖放到它上面的数据Anchor获取或设置组件的哪些边缘锚定到其容器边缘BackColor 获取或设置组件的背景色BackgroundImage获取或设置在组件中显示的背景图像BorderStyle获取或设置文本框组件的边框类型Bottom 获取组件的下边缘与其容器的工作区的上边缘之间的距离CanFocus 获取一个值该值指示组件是否可以接收焦点CanSelect 获取一个值该值指示是否可以选中组件CanUndo获取一个值该值指示用户在文本框组件中能否撤消前一操作CharacterCasing获取或设置TextBox组件是否在字符键入时修改其大小写格式ContextMenu 获取或设置与组件关联的快捷菜单Reated 获取一个值该值指示组件是否已经创建Cursor 获取或设置当鼠标指针位于组件上时显示的光标DataBindings 为该组件获取数据绑定Dock获取或设置组件停靠到父容器的哪一个边缘Enabled 获取或设置一个值该值指示组件是否可以对用户交互作出响应Focused获取一个值该值指示组件是否有输入焦点Font获取或设置组件显示的文字的字体ForeColor获取或设置组件的前景色MaxLength获取或设置用户可以在文本框组件中最多键入的字符数MultilineTRUE/FALSE该值指示它是否为多行文本框组件PasswordChar获取或设置字符该字符用于屏蔽单行ScrollBars获取或设置哪些滚动条应出现在多行TextBox 组件中Text获取或设置文本框中的当前文本TextAlign设置文本框内文本得对齐方式TextLength 获取组件中文本的长度
表TextBox类的常用属性及其说明
方法说明AppendText 向文本框的当前文本追加文本Clear从文本框控件中清除所有文本ClearUndo从该文本框的撤消缓沖区中清除关于最近操作的信息Copy 将文本框中的当前选定内容复制到剪贴板Cut将文本框中的当前选定内容移动到剪贴板中DoDragDrop 开始拖放操作Focus 为控件设置输入焦点GetChildAtPoint检索位于指定坐标处的子控件GetNextControl按照子控件的Tab键顺序向前或向后检索下一个控件Hide对用户隐藏控件Paste用剪贴板的内容替换文本框中的当前选定内容PointToClient将指定屏幕点的位置计算成工作区坐标PointToScreen将指定工作区点的位置计算成屏幕坐标ResetBindings 将DataBindings属性重置为其默认值Select 选择控件中的文本SelectAll 选定文本框中的所有文本SelectNextControl 激活下一个控件Show向用户显示控件SuspendLayout临时挂起控件的布局逻辑Undo撤消文本框中的上一个编辑操作
表TextBox类的常用方法及其说明
事件说明Click在单击文本框时发生
CursorChanged 当 Cursor 属性的值更改时发生
DoubleClick在双击控件时发生
DragDrop 在完成拖放操作时发生
DragEnter在将对象拖入控件的边界时发生
DragLeave在将对象拖出控件的边界时发生
DragOver 在将对象拖到控件的边界上发生
EnabledChanged Enabled 属性值更改后发生
Enter进入控件时发生
GiveFeedback在执行拖动操作期间发生
GotFocus在控件接收焦点时发生
KeyDown在控件有焦点的情况下按下键时发生
KeyPress在控件有焦点的情况下按下键时发生
KeyUp 在控件有焦点的情况下释放键时发生
Leave 在输入焦点离开控件时发生
LostFocus当控件失去焦点时发生
MouseDown 当鼠标指针位于控件上并按下鼠标键时发生
MouseEnter在鼠标指针进入控件时发生
MouseHover在鼠标指针悬停在控件上时发生
MouseLeave 在鼠标指针离开控件时发生
MouseMove 在鼠标指针移到控件上时发生
MouseUp 在鼠标指针在控件上并释放鼠标键时发生
MouseWheel在移动鼠标轮并且控件有焦点时发生
Move 在移动控件时发生
Paint 在重绘控件时发生
Resize 在调整控件大小时发生
TextBox类的常用事件及其说明
当然TextBox类除了上述的属性方法和事件还有很多属性方法和事件和很多受保护的方法和受保护的属性由于它们使用的几率较少和篇幅所限就不能一一介绍了感兴趣的朋友可以参阅相关资料
三.掌握TextBox组件的基本用法
由于TextBox类的成员实在太丰富一个示例要想介绍上述所有的方法属性和事件是不可能在下面介绍的示例中将突出介绍在Visual 集成开发环境下通过对设定不同的属性值实现三种常见的TextBox组件式样以及TextBox组件的方法的调用方法和在Visual Basic Net集成开发环境中如何加入TextBox组件不同事件对应的处理代码让各位更加熟悉TextBox类和Visual BasicNet开发环境
下面是TextBox示例的具体实现步骤
启动Visual Studio Net
选择菜单【文件】|【新建】|【项目】后弹出【新建项目】对话框
将【项目类型】设置为【Visual Basic项目】
将【模板】设置为【Windows应用程序】
在【名称】文本框中输入【TextBox组件】
在【位置】的文本框中输入【E:\项目】然后单击【确定】按钮这样在E:\VSNET项目目录中就产生了名称为TextBox组件的文件夹并在里面创建了名称为TextBox组件的项目文件
把Visual Studio Net的当前窗口切换到【FormVB(设计)】窗口并从【工具箱】中的【Windows窗体组件】选项卡中往Form窗体中拖入下列组件并执行相应操作
三个Label组件
三个TextBox组件分别为TextBoxTextBox和TextBox
按照表中数值来设定设定组件的主要属性请注意TextBox组件中的属性设定值
表【TextBox组件】项目窗体中各组件的主要属性设定数值表
按照表各值设定后的TextBox组件三种常用的式样也就产生了具体如图所示
图程序设计时TextBox组件三种常见使用方法
这三种式样就是单行的TextBox组件多行的TextBox组件和用以输入类似密码数据的TextBox组件
为TextBox组件添加事件和事件的处理代码此次添加的事件的名称是Leave当TextBox组件失去焦点时触发此事件添加TextBox组件的其他事件也可仿照下面的处理方法下面是利用Visual Basic Net在【TextBox组件】项目中添加TextBox组件的Leave事件和添加Leave事件的处理代码的具体步骤
首先把Visual Basic Net的当前窗口切换到Formvb的代码编辑界面然后在如图所示的选择框中选择TextBox
图选择TextBox组件
之后在图所示的选择框中选择Leave
图选取Leave事件
在选择Leave之后Visual Basic Net会自动在Formvb中产生TextBox的Leave事件
在Leave事件的事件处理代码区添加下列代码下面代码调用了TextBox组件的Clear方法并且显示一个TextBox组件失去焦点的提示框
TextBoxClear ( )
清除TextBox组件的显示内容
MsgBox ( 失去焦点!)
弹出提示框
至此【TextBox组件】项目的全部工作就完成了图是程序编译后运行界面
图【TextBox项目】的运行界面
四.总结
虽然【TextBox组件】项目已经完成了但是关于TextBox组件的话题远没有结束通过表表和表以及那些没有列出的属性方法和事件都无不表明在Visual Basic Net要精通一个在Visual Basic中非常基本的组件的使用方法都是很有难度的本章虽然介绍的TextBox组件其实对其他大多数组件也都具有参考价值这些组件的常用属性方法和事件的意义也大都和TextBox组件差不多