2

我在 vb.net 中“祝酒”,每当它弹出时,正文文本框中的所有文本总是突出显示...如何以编程方式删除突出显示?

谢谢!

这是似乎自动突出显示的代码:

Dim i As Integer
        toast.HeaderL.Text = headertext
        toast.BodyL.Text = contenttext
        toast.Show()
        toast.Opacity = 0
        i = 0
        While i < 100
            toast.SetDesktopLocation(My.Computer.Screen.WorkingArea.Right - toast.Width, My.Computer.Screen.WorkingArea.Bottom - ((toast.Height / 100) * i))
            toast.Opacity += 0.01
            wait(7)
            i += 1
        End While
        wait(4000)
        toast.Opacity = 1
        i = 0
        While i < 100
            toast.SetDesktopLocation(toast.Location.X, toast.Location.Y + toast.Height / 100)
            toast.Opacity -= 0.01
            wait(7)
            i += 1
        End While
        toast.Close()

BodyL(这是一个文本框)中的文本总是会突出显示自身。我尝试在某些时候添加 toast.Focus() ,但这不起作用。

toast 是表单名称。

4

1 回答 1

3

这更像是一种猜测,但您可以尝试在将文本分配给之后添加以下行BodyL

toast.BodyL.Select(toast.BodyL.Text.Length, 0)

另一个想法是在 toast 表单中添加一些其他控件(例如 a Panel),它可以接收输入焦点而不显示(它可以做得非常小,甚至可以移动到表单的可见部分之外),并确保当显示 toast 表单时,该控件接收焦点。

于 2009-08-28T19:07:36.547 回答