VB6和VB2005中的用户界面控件
作者:Bill Sempf 来源:msdn

VB6VB2005 中的用户界面控件。本文将向大家介绍如何轻松高效地将 Visual Basic 6 用户界面控件转换到 Visual Basic 2005 中。
简介
在进行 Visual Basic 6 应用程序转换时,有少量控件会比不进行转换的控件带来更多问题。在您拥有源代码的项目的控件、1997 年买回来的自定义 ActiveX 控件以及没有实际转换路径的内置 Microsoft 控件之间,要进行转换不是那么容易的。
不过,还是有可能的。Visual Basic 6 用户控件中的代码可以很好地转换到 Visual Basic 2005 中。您可以通过互操作功能来使用某些第三方控件。Visual Studio 2005 中提供的工具有助于创建 OCX 代理。所有功能都不会丢失。
集成用户控件
最大的问题是 Microsoft 稍微调整了用户控件的定义。由于继承的使用,我们实际上可以将用户控件定义为控件集合,从而扩展控件的概念。在 Visual Basic 6 中,用户控件只是可以驻留在其他窗体中的窗体。
幸运的是 Visual Basic 2005 可以出色地完成更改工作。多数更改工作均在后台进行,但是即使细微的设置,Visual Basic 6 升级向导也能很好地对其进行转换。接下来我将对此进行解释。
将带有用户控件的 Visual Basic 6 项目转移到 Visual Basic 2005 中
我在 Visual Basic 6 中构建了一个小型用户控件(仅实现了用于输入美国社会安全号码的三个文本框)。我将使用一些技巧,进行一些设置以查看转换向导的工作方式。


图 1:Visual Basic 6 SSN 控件
我将使用 TextChanged 事件,以在文本框具有正确的字符数时在它们之间自动切换。我将该事件驻留在一个简单的窗体中(该窗体只是在消息框中显示结果),并通过转换向导运行该事件。这是一个相当简单的过程:只需在 Visual Studio 2005 中使用“文件”->“打开项目...”菜单项来打开 Visual Basic 6 项目。
令人高兴的是 Visual Basic 2005 可以非常出色地对其进行处理。向导可以正确地以 Visual Basic 2005 格式创建窗体和用户控件。甚至还添加了 ToolTip ExtenderProvider,以支持默认情况下 Visual Basic 6 中的 TextBox 控件和用户控件的实例所具有的 ToolTip 属性。(请注意示例程序文件中的程序员注释使用的是英文,本文中将其译为中文是为了便于参考。)
列表 1:两个版本的代码比较
Visual Basic 6 代码


以下是引用片段:
Private Sub Three_Change()
If Len(Three.Text) = 3 Then
Two.SetFocus
End If
End Sub

Private Sub Two_Change()
If Len(Two.Text) = 2 Then
Four.SetFocus
End If
End Sub

Public Property Get SocialSecurityNumber()
SocialSecurityNumber = Three.Text & _
"-" & Two.Text & "-" & Four.Text
End Property

标签:实际上 , 文本框 , 用户控件 , 幸运的 , 转移到 , 美国社会 , 社会安全 , 社会安全号 , 社会安全号码 , 工作方式

还不快抢沙发

添加新评论