文本框在 Visual Basic .net 中失去焦点时出现问题
Trouble with textboxes losing focus in Visual Basic .net
最近我接到了一项任务,要用 Visual Basic 制作一个非常基本的数独游戏。
为此,我将 Visual Studio Ultimate 2013 Update 4 与 .NET Framework 一起使用。
我已经到了可以检查许多文本框中的哪一个具有焦点的地步。这样也可以更改相应文本框的背景颜色。
我已经通过使用此方法完成了此操作:
Private Sub TextBox_GotFocus() Handles TextBox1.GotFocus, TextBox2.GotFocus, TextBox3.GotFocus
Me.ActiveControl.BackColor = Color.Aquamarine
End Sub
要在任何文本框失去焦点时将它的颜色变回白色,我使用了这个:
Private Sub TextBox_LostFocus() Handles TextBox1.LostFocus, TextBox2.LostFocus, TextBox3.LostFocus
Me.ActiveControl.BackColor = Color.White
End Sub
现在我的问题是:
- 为什么应用程序在我关闭时会崩溃?我该如何解决这个问题?
(关闭时抛出 NullReferenceException)
- 这是否是实现我想要的目标的正确方法?或者有什么更有效的方法吗?
添加对象,EventArgs 作为参数。
;
该对象将是调用事件的调用控件。
Private Sub TextBox_GotFocus(sender As Object, e As EventArgs) Handles TextBox1.GotFocus, TextBox2.GotFocus, TextBox3.GotFocus
CType(sender, TextBox).BackColor = Color.Aquamarine
End Sub
Private Sub TextBox_LostFocus(sender As Object, e As EventArgs) Handles TextBox1.LostFocus, TextBox2.LostFocus, TextBox3.LostFocus
CType(sender, TextBox).BackColor = Color.White
End Sub
最近我接到了一项任务,要用 Visual Basic 制作一个非常基本的数独游戏。 为此,我将 Visual Studio Ultimate 2013 Update 4 与 .NET Framework 一起使用。
我已经到了可以检查许多文本框中的哪一个具有焦点的地步。这样也可以更改相应文本框的背景颜色。 我已经通过使用此方法完成了此操作:
Private Sub TextBox_GotFocus() Handles TextBox1.GotFocus, TextBox2.GotFocus, TextBox3.GotFocus
Me.ActiveControl.BackColor = Color.Aquamarine
End Sub
要在任何文本框失去焦点时将它的颜色变回白色,我使用了这个:
Private Sub TextBox_LostFocus() Handles TextBox1.LostFocus, TextBox2.LostFocus, TextBox3.LostFocus
Me.ActiveControl.BackColor = Color.White
End Sub
现在我的问题是:
- 为什么应用程序在我关闭时会崩溃?我该如何解决这个问题?
(关闭时抛出 NullReferenceException)
- 这是否是实现我想要的目标的正确方法?或者有什么更有效的方法吗?
添加对象,EventArgs 作为参数。
;
该对象将是调用事件的调用控件。
Private Sub TextBox_GotFocus(sender As Object, e As EventArgs) Handles TextBox1.GotFocus, TextBox2.GotFocus, TextBox3.GotFocus
CType(sender, TextBox).BackColor = Color.Aquamarine
End Sub
Private Sub TextBox_LostFocus(sender As Object, e As EventArgs) Handles TextBox1.LostFocus, TextBox2.LostFocus, TextBox3.LostFocus
CType(sender, TextBox).BackColor = Color.White
End Sub