如何启用文本框中的覆盖文本?

时间:2015-10-07 14:00:30

标签: vb.net winforms

我正在制作一个需要登录系统的程序。我想要做的是有一个文本框,其中包含'用户名'当用户点击它时,'用户名'文字被覆盖。例如,Spotify在登录屏幕上使用它:

enter image description here

我的问题是,我该怎么做?

2 个答案:

答案 0 :(得分:0)

将用于用户名的Text的{​​{1}}属性设置为字符串TextBox。然后,在"Username"的{​​{1}}事件中,将其更改为空字符串。像这样:

TextBox

修改 正如@LarsTech所提到的,如果用户选中Click,则无法解决此问题。如果您也想说明这一点,请改为使用Private Sub TextBox1_Click(sender As Object, e As EventArgs) Handles TextBox1.Click TextBox1.Text = "" End Sub 的{​​{1}}事件:

TextBox

答案 1 :(得分:0)

我同意,使用Textbox1.Enter是最简单的解决方案。最重要的是,您还可以看到没有通过TextBox1.Leave输入文本的情况

Private Sub TextBoxLeaveHandle() Handles TextBox1.Leave
    If TextBox1.Text = "" Then
        TextBox1.Text = "Username"
    End If
End Sub

有时使用TextBox.SelectAll()函数也很有用,因为它不会立即删除整个文本,但(显然从名称中)选择整个文本,这样您就可以用第一个按键覆盖它。