Кстати, да. Больше то неоткуда. Только ведь форма может и не знать о своей модальности.Хакер писал(а):А откуда осуществляется перебор форм? Из кода этой модальной формы ведь?
Почему неоткуда?Кстати, да. Больше то неоткуда.
чё тут непонятного? Чтобы показать окна обратно, надо знать, как была показана форма, так и показать.
с указанием родителя (frm.Show vbModal, Me) в сравнении с простым frm.Show vbModal, кроме того, что при выгрузке родителя выгружается и ребёнок?
' на форму брось таймер
Private Sub Form_Click()
Dim f As New Form1
f.Show vbModal, Me
End Sub
Private Sub Timer1_Timer()
Me.Caption = Date & " " & Time
End Sub
Уж что нибудь одно - либо продолжение выполнения кода после отображения формы, либо модальное отображение формы.Space писал(а):а есть ли альтернатива frm.Show vbModal, Me, но чтобы выполнение кода продолжилось после вызова frm.Show vbModal, Me?
Viper писал(а):Уж что нибудь одно - либо продолжение выполнения кода после отображения формы, либо модальное отображение формы.Space писал(а):а есть ли альтернатива frm.Show vbModal, Me, но чтобы выполнение кода продолжилось после вызова frm.Show vbModal, Me?
Space писал(а):Viper, мне надо завершить выполнение цикла и процедуры после frm.Show vbModal, Me и всё, дальше окно как модальное не должно давать доступа к другим окнам и всё как обычно...
Dim WithEvents slvfrm As Form
' 0 - Modeless, 1 - Modal
Private Sub Command1_Click(Index As Integer)
Dim frm As New frmSurModal2
If Index = 0 Then
Set slvfrm = frm
frm.Show vbModeless, Me
Else
frm.Show vbModal, Me
End If
End Sub
Private Sub slvfrm_Load()
Me.Enabled = False
End Sub
Private Sub slvfrm_Unload(Cancel As Integer)
Me.Enabled = Not CBool(Cancel)
If Me.Enabled Then
Set slvfrm = Nothing
End If
End Sub
Сейчас этот форум просматривают: Google-бот и гости: 4