VB.Net TEXTBOX 控件教程:带示例的属性
什么是TextBox控件?
TextBox控件允许您在运行时在窗体上输入文本。默认情况下,它只接受单行文本,但您可以将其修改为接受多行。您甚至可以在TextBox控件中包含滚动条。
TextBox 属性
以下是 Visual Basic TextBox 控件最常见的属性
- TextAlign – 用于设置文本对齐方式
- ScrollBars – 用于添加垂直和水平滚动条
- Multiline – 用于将 TextBox 控件设置为允许多行输入
- MaxLength – 用于指定 TextBox 控件可接受的最大字符数
- Index – 用于指定控件数组的索引
- Enabled – 用于启用文本框控件
- Readonly – 如果设置为 True,您将能够使用 TextBox 控件;如果设置为 False,您将无法使用 TextBox 控件。
- SelectionStart – 用于设置或获取 TextBox 控件的起始点。
- SelectionLength – 用于设置或获取 TextBox 控件中已选中的字符数。
- SelectedText – 返回当前被选中的 TextBox 控件。
TextBox 事件
事件的目的是使 TextBox 控件响应用户的操作,例如单击、双击或文本对齐方式的更改。以下是 TextBox 控件的常见事件
- AutoSizeChanged – 当 AutoSize 属性更改时触发。
- ReadOnlyChanged – 当 ReadOnly 属性值更改时触发。
- Click – 单击 TextBox 控件时触发。
如何创建 TextBox
步骤 1) 要创建 TextBox,请将 TextBox 控件从工具箱拖到 WindowForm。
步骤 2)
- 单击您已添加到窗体的 TextBox 控件。
- 移动到屏幕左下角的“属性”部分。将文本框的名称从 TextBox1 更改为 HelloTextBox。
步骤 3) 添加以下代码以向控件添加文本
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 'Add text to the control HelloTextBox.Text = "Hello. Welcome to Guru99!" End Sub
步骤 4) 您现在可以通过单击顶部的“开始”按钮来运行代码。
步骤 5) 您应该会看到以下窗体。
这是上面完整代码的屏幕截图。
代码解释
- 创建名为 Form1 的公共类
- 创建名为 Form1_Load 的子过程。当窗体加载时会调用它。
- 注释。VB.net 编译器将跳过此行。
- 结束子过程
- 结束类。
密码字符
有时,您希望文本框用于输入密码。这意味着无论输入到该文本框的内容都应保密。这在 VB.net 中是可能的。这可以通过 **PasswordChar** 属性来实现,该属性允许我们使用任何您想要的字符。让我们通过一个例子来演示这一点。
首先创建一个新项目。将两个 TextBox 控件、两个 Label 和一个 Button 拖到窗体上。将两个 Label 和 Button 上的文本更改为以下内容。
单击“用户名”标签旁边的文本框,然后移动到窗口左下角的“属性”部分。将其命名为 UsernameField。
对“密码”标签旁边的 TextBox 控件也执行相同的操作,将其命名为 PasswordField。
您现在应该使 PasswordField TextBox 控件显示 * 作为用户键入的每个字符。添加以下代码。
Private Sub PasswordField_TextChanged(sender As Object, e As EventArgs) Handles PasswordField.TextChanged PasswordField.PasswordChar = "*" End Sub
现在,通过单击“开始”按钮来运行代码。会弹出一个窗体。
键入用户名和密码,然后观察发生了什么。您应该会看到以下内容。
用户名已显示,但密码已隐藏。这是上述代码。
代码解释
- 创建名为 Form1 的类。
- 创建名为 PasswordField_textchanged() 的子过程。当窗体加载时会调用它。
- 使用 PasswordChar 属性在用户键入密码时显示 *。
- 结束子程序。
- 结束类。
TextBox 中的换行符
默认情况下,您只能在文本框中创建一行文本。有两种方法可以实现这一点。让我们来讨论一下。
将 TextBox 控件拖放到您的窗体上。将该控件命名为 GuruWelcome。
再次单击文本框控件,然后将鼠标光标移动到“属性”部分。将 Multiline 属性的值更改为 True。
或者,您也可以在代码中将 Multiline 属性设置为 true,如下所示:
GuruWelcome.Multiline = True
添加以下代码。
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load GuruWelcome.Multiline = True GuruWelcome.Text = "Line 1" GuruWelcome.Text = GuruWelcome.Text & ControlChars.NewLine & "Line 2" End Sub
执行后,两行文本将分开。
代码解释
- 创建名为 Form1 的类
- 创建名为 Form1_Load() 的子例程
- 将 Multiline 属性设置为 True。文本框将能够容纳多行。
- 向文本框添加第一行文本。
- 添加文本框的第二行文本。Controlchars.NewLine 属性帮助我们分隔这两行。
- 结束子例程。
- 结束类。
检索整数值
VB.net 将所有内容都视为字符串。这意味着您从文本框读取的整数是字符串,然后将其转换为整数。这通常使用 **Integer.Parse()** 方法完成。
为了演示这一点,创建一个新的文本框控件和一个按钮。将文本框命名为 age,将按钮命名为 Button1。您应该会看到以下界面。
添加以下代码。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim x As Integer x = Integer.Parse(age.Text) MessageBox.Show(x)
运行代码,然后在文本框中输入您的年龄。单击“显示年龄”按钮。您应该会看到以下内容。
您输入的值将在消息框中返回。
代码解释
- 创建名为 Form1 的类。
- 创建名为 Button1_Click 的子过程。当按钮被单击时会调用它。
- 定义一个名为 x 的整数变量。
- 将从名为 age 的文本框读取的值转换为整数。
- 在上面的步骤中转换的值显示在消息框中。
- 结束子程序。
- 结束类。
只读 TextBox
您可以使文本框只读。这意味着用户将无法修改文本框中显示的值。要做到这一点,您需要将 **ReadOnly** 属性设置为 True。为了演示这一点,创建一个新的文本框并将其命名为 guru99。添加以下代码。
Private Sub guru99_TextChanged(sender As Object, e As EventArgs) Handles guru99.TextChanged guru99.Text = "welcome to Guru99" guru99.ReadOnly = True End Sub
代码应返回以下内容。
这是代码
代码解释
- 创建名为 Form1 的类。
- 创建名为 guru99_TextChanged 的子例程。
- 向名为 guru99 的文本框添加文本。
- 将文本框的 ReadOnly 属性设置为 True。这将使文本框中的文本无法修改。
- 结束子程序。
- 结束类。
最大长度
MaxLength 属性可以帮助您设置文本框允许的最大单词数或字符数。为了演示这一点,创建一个 TextBox 控件并将其命名为 fullName。添加以下代码。
Private Sub fullName_TextChanged(sender As Object, e As EventArgs) Handles fullName.TextChanged fullName.MaxLength = 8 End Sub
运行代码并尝试输入您的全名。您将无法输入超过 8 个字符(包括空格)。
代码
代码解释
- 创建名为 Form1 的类。
- 创建名为 fullName_TextChanged 的子过程。
- 使 fullName 文本框最多只接受 8 个字符。
- 结束子程序。
- 结束类。
摘要
- TextBox 控件允许您在运行时在窗体中输入文本。它非常适合获取用户输入。
- 默认情况下,TextBox 控件只接受单行文本。但是,您可以更改此设置。
- 您可以隐藏用户在 TextBox 中键入的内容,尤其是在需要捕获密码时。
- 您还可以设置 TextBox 中所需的字符最大数量。
- 您可以使您的 TextBox 不可编辑,这意味着用户将无法更改其上显示的文本。