У меня есть родительская форма, которая открывает модальную дочернюю форму. Детская форма имеет 2 кнопки - хорошо и отменить. Я хотел бы вызвать соответствующие события в родительской форме. Любые идеи, как я могу это сделать?Как обновить родительскую форму из дочерней формы в vb6?
Я думал, что должен передать родительский объект формы при вызове Show
на ребенка, но он, похоже, не помогает.
Это код, который я имею в родительской форме:
answerFromChild = "NothingReceivedYet" 'it's a public property that should get updated
'to "Okay" when the okay button
'in the child form is clicked.
Dim myChildForm2 As New ChildForm2
myChildForm2.setVariableOne = "Test"
myChildForm2.Show vbModal, Me
If answerFromChild <> "Okay" Then Exit Sub
'there is more code if it says "Okay"
Приведенный выше код в родительском работает, но answerFromChild
свойство никогда не обновляется до «Хорошо».
Это код в виде ребенка:
Private Sub Okay_Click()
ParentForm1.answerFromChild = "Okay" 'this works but it updates
'the "answerFromChild" in
'another instance of the ParentForm1
Unload Me
End Sub
Хорошая идея, но я получаю сообщение об ошибке 'времени выполнения '91': Переменная объекта или переменная блока не set' на 'child.Show' – Apostrofix
Вы пропустили ключевое слово' New', которое я использовал в своем коде? 'Dim WithEvents child As New Form2' – joehanna
@joehanna Вы не можете использовать' WithEvents' с декларацией 'New'. Для 'WithEvents' OP потребуется явно выделение. – wqw