Vb6 如何循环使用另一个表单';组合框?

Vb6 如何循环使用另一个表单';组合框?,vb6,Vb6,我正在寻求一些关于我的代码的建议/提示/更正,为什么它不能正确工作 我有两张表格。 带有菜单栏(add type menubar)的Form1,我想让它在form2上的组合框列表中循环(检查列表中是否没有可以添加的现有数据)。 我不明白的是为什么它在form1上不起作用?当我在其他项目上使用1表单测试代码时,它是有效的。有人能告诉我怎么了吗?为什么 使用2个表格。此代码只会添加新类型,但不会检查组合框上是否存在数据:( 顺便说一下,这是我的代码,只使用1个表单(添加并检查是否存在数据) NewC

我正在寻求一些关于我的代码的建议/提示/更正,为什么它不能正确工作

我有两张表格。
带有菜单栏(add type menubar)的Form1,我想让它在form2上的组合框列表中循环(检查列表中是否没有可以添加的现有数据)。
我不明白的是为什么它在form1上不起作用?当我在其他项目上使用1表单测试代码时,它是有效的。有人能告诉我怎么了吗?为什么

使用2个表格。此代码只会添加新类型,但不会检查组合框上是否存在数据:(

顺便说一下,这是我的代码,只使用1个表单(添加并检查是否存在数据)


NewCharter
必须包含对
NewCharter
表单的有效打开实例的引用

VB6允许您通过其类名访问表单,而无需显式创建表单。这可能会导致混淆。您应该始终显式创建表单并传递引用

在一个表单中,您必须有一个
NewCharter
类型的变量。然后您必须创建第二个表单并告诉第一个表单您已经创建了。例如

Dim another_form As NewCharter
Set another_form = New NewCharacter

然后你使用另一张表格,而不是你现有的代码中的新章程。

先生,根据你的回答,我把你给我的代码放在表格1上我的菜单栏下是但不知何故没有添加新数据并检查数据是否已经存在。@blackmaler我给你的代码只创建了一个表单并存储了引用。你必须确保创建的表单在试图访问它的地方包含一些数据。我不知道如何用数据填充表单,你知道。试着用另一个表单扩展代码isible=True和拉入数据的触发方法。然后单击您的
mnuAYT
。我通过用户输入cmbTypeYacht.text从form2获取数据,form1获取munebar(mnuAYT),在“cmbTypeYacht”上有一些数据已经存在,因此我需要在列表中循环它,以确保它不会重复任何已经存在的内容。
Dim TypeYacht As String 'Type of yacht added
Dim blnItem As Boolean
Dim intItem As Integer

' ----------------------------- LOOP THROUGHT the combo box all items -------------------------

blnItem = False
intItem = 0
TypeYacht = cmbTypeYacht.Text

Do Until blnItem = True Or intItem = cmbTypeYacht.ListCount
    If TypeYacht = cmbTypeYacht.List(intItem) Then
        blnItem = True
    End If
    intItem = intItem + 1
Loop
    If blnItem = True Then
     MsgBox TypeYacht & " " & "is already exist", vbInformation, "Yacht Type Match"
     cmbTypeYacht.ListIndex = intItem - 1
    Else
    cmbTypeYacht.AddItem cmbTypeYacht.Text
    MsgBox "Successfully added new Yacht Type", vbInformation, "Successfully Added"

    End If
Dim another_form As NewCharter
Set another_form = New NewCharacter