powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Child Form
6 сообщений из 6, страница 1 из 1
Child Form
    #34472178
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, здравствуйте !!!

Такая ситуация.
Имеется MDI приложение.
Пользователь свернул дочернию форму внизу и пытается открыть эту же форму.
Как сообщить ему, что такая форма уже существует ???

Спасибо.
...
Рейтинг: 0 / 0
Child Form
    #34472231
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Галантно )).

А может просто развернуть ту же форму?
...
Рейтинг: 0 / 0
Child Form
    #34472613
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дело в том, что пользователь открывает журнал данных
и выбирает из него что-то ...
Естественно в свернутой формы попадает совсем другая информация,
а старая в свою очередь исчезает !!!
А это катастрофа...
...
Рейтинг: 0 / 0
Child Form
    #34472934
Nikz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
'в модуле
Public childFormOpened As Boolean

'в childForm
Private Sub Form_Load()
childFormOpened = True
End Sub

Private Sub Form_Unload(Cancel As Integer)
childFormOpened = False
End Sub

'в процедуре выбора из журнала
...
If childFormOpened then
    MsgBox "Дочерняя форма открыта"
    Exit Sub
EndIf
'ниже открываем дочернюю форму
...
2
открывать childForm модально, что бы юзер не мог делать ничего кроме работы с этой формой (на правах бреда...)
3
Код: plaintext
1.
2.
3.
4.
5.
6.
'в процедуре выбора из журнала
...
'создаем новый экземпляр childForm, не убивая ранее открытый
Dim frmForm as new childForm
frmForm.Show
...
лично я обычно поступаю по третьему пути, потому что MDI вроде как предполагает что дочерние окна могут быть открыты в нескольких экземплярах...
...
Рейтинг: 0 / 0
Child Form
    #34473013
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я пока решил проблему так:

Код: plaintext
1.
2.
3.
4.
5.
For Each Form In Forms
   If Form.Name = "frmDepFacRec" Then
   MsgBox "Это форма уже существует !!!", vbInformation, "Atentie"
   Exit Sub
   End If
Next Form
Согласен с Вашим 3 пунктом
Попробую разобраться

Спасибо
...
Рейтинг: 0 / 0
Child Form
    #34473268
TIKO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возможно у вас проблемма при передачи данных в экземпляр доч.формы
у MDI формы есть свойство ActiveForm если не ошибаюсь
можно попробовать проверить так, хотя сам не проверял
в данном примере форма должна быть активной

Код: plaintext
1.
2.
3.
4.
5.
Dim frm as New Form1
If MDI.ActiveForm.Name="Form1" Then
Exit sub
Else
frm.Show
End if
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Child Form
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]