实例047文本框编辑

TextBox 类

https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.forms.textbox?view=netframework-4.8

使用 TextBox 控件时,用户可以在应用程序中输入文本。 此控件具有在标准 Windows 文本框控件中找不到的其他功能,包括多行编辑和密码字符掩码。

通常,TextBox 控件用于显示或接受作为输入的一行文本。 您可以使用 "Multiline" 和 "ScrollBars" 属性来启用显示或输入多行文本。 将 AcceptsTab 和 AcceptsReturn 属性设置为 true,以便在多行 TextBox控件中启用更大的文本操作。

可以通过将 MaxLength 属性设置为特定数量的字符来限制输入 TextBox 控件中的文本量。 TextBox 控件还可用于接受密码和其他敏感信息。 您可以使用 PasswordChar 属性来屏蔽在单行版本的控件中输入的字符。 使用 "CharacterCasing" 属性可使用户只键入大写、小写或大写和小写字符与 TextBox 控件的组合。

若要滚动 TextBox 的内容,直到光标(插入符号)位于控件的可见区域内,可以使用 ScrollToCaret 方法。 若要选择文本框中的文本范围,可以使用 Select 方法。

若要限制在 TextBox 控件中输入文本,可以为 KeyDown 事件创建事件处理程序,以便验证在控件中输入的每个字符。 还可以通过将 ReadOnly 属性设置为 true,来限制 TextBox 控件中的所有数据输入。

属性

表 2
AcceptsReturn

获取或设置一个值,该值指示在多行 TextBox 控件中按 Enter 键时,是在控件中创建一行新文本还是激活窗体的默认按钮。

AcceptsTab

获取或设置一个值,该值指示在多行文本框控件中按 Tab 键时,是否在控件中键入一个 Tab 字符,而不是按选项卡的顺序将焦点移动到下一个控件。

(继承自 TextBoxBase)
AllowDrop

获取或设置一个值,该值指示控件是否可以接受用户拖放到它上面的数据。

(继承自 Control)
AutoSize

获取或设置一个值,该值指示当更改分配给控件的字体时,是否自动调整控件的高度。

(继承自 TextBoxBase)
BackColor

获取或设置控件的背景色。

(继承自 TextBoxBase)
CanUndo

获取一个值,该值指示用户在文本框控件中能否撤消前一操作。

(继承自 TextBoxBase)
ForeColor

获取或设置控件的前景色。

(继承自 TextBoxBase)
Lines

获取或设置文本框控件中的文本行。

(继承自 TextBoxBase)
Location

获取或设置该控件的左上角相对于其容器的左上角的坐标。

(继承自 Control)
MaxLength

获取或设置用户可在文本框控件中键入或粘贴的最大字符数。

(继承自 TextBoxBase)
Multiline

获取或设置一个值,该值指示这是否为多行 TextBox 控件。

ReadOnly

获取或设置一个值,该值指示文本框中的文本是否为只读。

(继承自 TextBoxBase)
ScrollBars

获取或设置哪些滚动条应出现在多行 TextBox 控件中。

SelectedText

获取或设置一个值,该值指示控件中当前选定的文本。

(继承自 TextBoxBase)
SelectionStart

获取或设置文本框中选定的文本起始点。

(继承自 TextBoxBase)
Text

获取或设置与此控件关联的文本。

TextAlign

获取或设置 TextBox 控件中文本的对齐方式。

TextLength

获取控件中文本的长度。

(继承自 TextBoxBase)

方法

表 3
AppendText(String)

向文本框的当前文本追加文本。

(继承自 TextBoxBase)
Clear()

从文本框控件中清除所有文本。

(继承自 TextBoxBase)
Copy()

将文本框中的当前选定内容复制到“剪贴板”。

(继承自 TextBoxBase)
CreateGraphics()

为控件创建 Graphics

(继承自 Control)
Cut()

将文本框中的当前选定内容移动到“剪贴板”中。

(继承自 TextBoxBase)
DeselectAll()

将 SelectionLength 属性的值指定为零,从而不会在控件中选择字符。

(继承自 TextBoxBase)
DoDragDrop(Object, DragDropEffects)

开始拖放操作。

(继承自 Control)
Paste()

用剪贴板的内容替换文本框中的当前选定内容。

(继承自 TextBoxBase)
Paste(String)

将选定文本设置为指定文本,但不清除撤消缓冲区。

Select()

激活控件。

(继承自 Control)
Undo()

撤消文本框中的上一个编辑操作。

(继承自 TextBoxBase)
Update()

使控件重绘其工作区内的无效区域。

(继承自 Control)

对话框类Form是定义在 Windows名称空间下的类,对话框类中定义了一个名为Controls的属性,用于表示对话框上的所有控件。 Controls为控件集合,可利用下标访问每个控件。集合变量的使用方法类似于数组,可通过下标指定访问的集合元素。

本例控件及其属性值

控件 属性 控件 属性
TextBox Name txtText Button Name btnClear
  Multiline true   text 清除
  text   Button Name btnReadOnly
Button Name btnCopy   Text 只读
  Text 复制 Button Name btnUndo
Button Name btnCut   Text 撤消
  Text 剪切 Button Name btnPaste
        Text 粘贴
Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        txtText.Width = Me.Width
        txtText.Height = 220
        txtText.Left = 0
        txtText.Top = 0
        txtText.WordWrap = True '是否自动换行
    End Sub

    Private Sub btnCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCopy.Click
        Static tempStr As String
        tempStr = txtText.SelectedText
        If tempStr = "" Then
            MsgBox("选择文本")
        End If
        String.Copy(tempStr)
    End Sub

    Private Sub btnPaste_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPaste.Click
        txtText.Paste()
    End Sub

    Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click
        txtText.Clear()
    End Sub

    Private Sub btnUndo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUndo.Click
        txtText.Undo()
    End Sub

    Private Sub btnReadOnly_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnReadOnly.Click
        Dim i As Integer
        If txtText.ReadOnly Then
            btnReadOnly.Text = "只读"
            txtText.ReadOnly = False
            For i = 0 To Me.Controls.Count - 1
                Me.Controls(i).Enabled = True
            Next
        Else
            btnReadOnly.Text = "可写"
            txtText.ReadOnly = True
            For i = 0 To Me.Controls.Count - 1
                If Not (Me.Controls(i) Is btnReadOnly) Then
                    Me.Controls(i).Enabled = False
                End If
            Next

        End If
    End Sub

    Private Sub btnCut_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCut.Click
        txtText.Cut()
    End Sub
End Class
发布了146 篇原创文章 · 获赞 0 · 访问量 2713

猜你喜欢

转载自blog.csdn.net/ngbshzhn/article/details/105682908