0

我正在使用 VS2010 将 VB6 转换为 VB.NET

当我在转换代码时,我发现一些我不明白代码正在做什么和得到的含义以及如何很好地转换它的东西。

i = 0

While Not rd.EOF

        cobTmp.Items.Insert(i, rd.Fields("d").Value)
        VB6.SetItemData(cobTmp, i, rd.Fields("r").Value)
        If rd.Fields("r").Value = "1234" Then
            intloc1234 = i
        End If
        rd.MoveNext()
        Debug.Print(VB6.TabLayout(VB6.GetItemData(cobTmp, i), VB6.GetItemString(cobTmp, i)))
        i = i + 1
    End While

我怎样才能很好地处理这段代码以及这一行:

Debug.Print(VB6.TabLayout(VB6.GetItemData(cobTmp, i), VB6.GetItemString(cobTmp, i)))

可以cobTmp.item(i)用来代替VB6.GetItemData(cobTmp, i)吗?

怎么样VB6.TabLayout??

我知道这些可以忽略,但我想做得更好。

4

1 回答 1

1

关于GetItemData,根据微软支持

在 Visual Basic 6.0 中,可以在设计时在“属性”窗口中设置 ListBox 或 ComboBox 控件的 ItemData 属性,以将 Integer 与 ListBox 或 ComboBox 项相关联。在 Visual Basic 2010 中,ItemData 属性不再存在;GetItemData 和 SetItemData 方法可用于模拟 ItemData 的行为。

关于TabLayout,根据这篇微软支持文章

在 Visual Basic 6.0 中,Debug.Print 方法有一个 outputlist 参数,用于指定输出在立即窗口中的格式。升级工具使用此函数将 outputlist 参数转换为字符串以显示在立即窗口中。

于 2012-07-12T12:23:04.080 回答