我在这里学编程基础篇 共50页[1 2 3 4 5 6 7 >»<... 最后一页]

文本框 TextBox控件

TextBox 控件,又称文本框控件,它被用来显示用户输入的信息,是Windows操作系统下进行人机对话的常用元素。

所谓人机对话,就是计算机能获知用户给它的信息,同时,它也能作出相应的反馈,对于前者,我们除了用鼠标向计算机发出命令外,也常需要以键盘向计算机输入一些内容,如键入用户的姓名、年龄、性别等。

在VB编程中,一般都是以文本框控件来实现,即用户输入的信息,放入文本框中的。 在 Visual Basic 操作界面中,TextBox(文本框)控件所代表的图标如图一:    


图一

    TextBox 控件主要用来显示文本或用来输入文本,如 Windows 登陆时的“口令”窗口,或者记事本的整个编辑区域。

    双击工具箱中的文本框控件或者单击文本控件,然后用鼠标在 VB 的工作区域拖拉,就可以创建文本框了。 如图二:    


图二

    文本框控件的默认名称为 TextX(X为 1、2、3,等等),命名规则为 TxtX(X为用户自定义的名字,如 TxtShow、TxtFont、TxtColor ,等等)

    一、文本框控件的主要属性:

    1、Text(文本)属性:

    本控件最重要的属性,用来显示文本框中的文本内容,可以在界面设置时指定,如图三:    


图三

    也可以在程序中动态修改,程序代码规则:

    文本框控件名.Text = "显示的文本内容"

    如要在一个名为 TxtFont 的文本框控件中显示“隶书”字样,那么输入代码:

    TxtFont.Text = "隶书"

    习题一:创建一个文本框(TxtContent)用来显示文本;按钮一(Cmd1),点击时文本框内容变为“我也会VB编程”;按钮二(Cmd2),点击时文本框内容清空(也就是没有内容)。

    答案:见答案区。

    2、SelText(选中文本)属性:

    本属性返回或设置当前所选文本的字符串,如果没有选中的字符,那么返回值为空字符串即""。

    请注意,本属性的结果是个返回值,或为空,或为选中的文本。

    一般来说,选中文本属性跟文件复制、剪切等剪贴板(在 VB 中,剪贴板用 Clipboard 表示)操作有关,如要将文本框选中的文本拷贝到剪贴板上:

    Clipboard.SetText 文本框名称.SelText(注意,本行没有表示赋值的等号。)

    要将剪贴板上的文本粘贴到文本框内:

    文本框名称.SelText = Clipboard.GetText(注意,本行有表示赋值的等号。)

    例:一个文本框(TxtContent),按钮一(CmdCopy)用于复制文本框中的选中文本;按钮二(CmdPaste)用于将剪贴板上的内容粘贴到文本框内。

    按钮一:
  Private Sub CmdCopy_Click()
  Clipboard.SetText TxtContent.SelText
  End Sub

    按钮二:
  Private Sub CmdPaste_Click()
  TxtContent.SelText = Clipboard.GetText
  End Sub

    3、SelStart 与 SelLength 属性:
  SelStart ,选中文本的起始位置,返回的是选中文本的第一个字符的位置。
  SelLength ,选中文本的长度,返回的是选中文本的字符串个数。 例如:文本框 TxtContent 中有内容如下:

    跟我一起学习 VB 教程

    假设选中“一起学习”四个字,那么,SelStart 为 3 ,SelLength 为 4 。

    4、MaxLength(最大长度)属性:

    本属性限制了文本框中可以输入字符个数的最大限度,默认为 0 ,表示在文本框所能容纳的字符数之内没有限制,文本框所能容纳的字符个数是 64K ,如果超过这个范围,则应该用其他控件来代替文本框控件。

    这跟 Windows 中用记事本打开文件一样,当文件过大,系统会自动调用写字板来打开文件,而不是用记事本。

    文本框控件 MaxLength 属性既可以在界面设置过程中予以指定,如图四:    


图四

    也可以在设计时予以改变,代码如下:

    文本框控件名.Maxlength = X(X为阿拉伯数字,如 10、20、57,等等)。

    5、MultiLine(多行)属性:

    本属性决定了文本框是否可以显示或输入多行文本,当值为 True ,文本框可以容纳多行文本;当值为 False ,文本框则只能容纳单行文本。

    本属性只能在界面设置时指定,程序运行时不能加以改变。如图五:    


图五

    6、PasswordChar(密码)属性:

    本属性主要用来作为口令功能进行使用。例如,若希望在密码框中显示星号,则可在“属性”窗口中将 PasswordChar 属性指定为 “*” 。这时,无论用户输入什么字符,文本框中都显示星号。如图六:    


图六

    在 VB 中,PasswordChar 属性的默认符号是星号,但你也可以指定为其他符号。但请注意,如果文本框控件的 MultiLine(多行)属性为 True ,那么文本框控件的 PasswordChar 属性将不起作用。

  7、Alignment:设置控件中文本的对齐方式。

 8、ToolTipText:设置汉用户将鼠标移至该控件时,所出现的提示文本。

    习题二:一个文本框(TxtPassword),PasswordChar 属性指定为星号“*”;一个按钮(CmdShow);另外还有一个标签(LblShow),在初始状态下,Caption 为空。程序目的在于,点击 CmdShow 按钮,LblShow 能显示文本框控件中输入的密码。

    答案:见本节后面的答案区。

    7、ScrollBars(滚动条)属性:

    本属性可以设置文本框是否有滚动条。当值为 0 ,文本框无滚动条;值为 1 ,只有横向滚动条;值为 2 ,只有纵向滚动条;值为 3 ,文本框的横竖滚动条都具有。如图七:    


图七

    8、Locked(锁定)属性:

    当值为 False ,文本框中的内容可以编辑;当值为 True ,文本框中的内容不能编辑,只能查看或进行滚动操作。

    二、文本框控件的事件:

    除了 Click、DbClick 这些不常用的事件外,与文本框相关的主要事件是 Change、GotFocus、LostFocus 事件。

    1、Change 事件:

    当用户向文本框中输入新内容,或当程序把文本框控件的 Text 属性设置为新值时,触发 Change 事件。

    2、GotFocus 事件:

    本事件又名“获得焦点事件”。所谓获得焦点,其实就是指处于活动状态。在电脑日常操作中,我们常常用 Alt+Tab 键在各个程序中切换,处于活动中的程序获得了焦点,不处于活动的程序则失去了焦点(LostFocus)。

    3、LostFocus 事件:

    失去焦点,详情如上。 例子:一个文本框(TxtContent),默认状态下内容为空;当获得焦点时,文本框内容显示————“大家好,课程还难吗”字样;当失去焦点,文本框回到初始状态。另外再创建一个标签(LblShow),当用户试图向文本框输入文本或改变文本框本来的文本时,标签显示“标签的作用大家还清楚吗”字样。

    界面如图八:    


图八

    程序如下:

    文本框:
  Private Sub TxtContent_GotFocus()
  TxtContent.Text = "大家好,课程还难吗"
  End Sub

    Private Sub TxtContent_LostFocus()
  TxtContent.Text = ""
  End Sub

    Private Sub TxtContent_Change()
  LblShow.Caption = "标签的作用大家还清楚吗"
  End Sub

    三、知识点:

    1、请记住,Clipboard 指的是 Windows 剪贴板,剪贴板最常用的操作是所选文本的拷贝与粘贴。

    拷贝:
  Clipboard.SetText 文本框名称.SelText

    粘贴:
  文本框名称.SelText = Clipboard.GetText

    2、Multiline 属性为 True 时,文本框控件的 PasswrodChar 属性不起作用。

    3、如果要让文本框的内容自动换行,只需取消文本框的横向滚动条就行了。

     TextBox控件的主要作用为:接受用户输入文本,它们可以是具有滚动条的。所以,Text、MultiLine、ScrollBars、Alignment、Locked这几个属性就显得非常重要,而PasswordChar、ToolTipText属性,又对TextBox控件的功能作了扩充。TextBox控件是VB中的常用控件,掌握这些属性对你今后的程序开发将大有帮助。 当然,除了本课所学的属性外,还不能忽视与窗体Form相同的常用属性,如Name、BackColor、Enable等。

    四、答案区:

    习题一:

    按钮一:
  Private Sub Cmd1_Click()
  TxtContent.Text = "我也会VB编程"
  End Sub

    按钮二:
  Private Sub Cmd2_Click()
  TxtContent.Text = ""
  End Sub

    习题二:

    按钮:
  Private Sub CmdShow_Click()
  LblShow.Caption = TxtPassword.Text
  End Sub

我在这里学编程基础篇 共50页[1 2 3 4 5 6 7 >»<... 最后一页]