すべての子フォームを閉じる
ここに載せてあるソースコードは、参考のために載せてあります
サンプルコードは、一番下にLZHとしてあります
Option Explicit 'MDIフォームの子フォームをすべて閉じる方法です '実は、このテクニックはマジで欲しかったんですよ。 'kuroNeko Drawの作成でこのテクニックができなくて 'メニューの"すべて閉じる"を省こうかなと思ってました。 'つきとさんの助言で作成できてよかったと思います。 'このサンプルは、本当は作成する予定ではなかったのですが 'あまりの嬉しさに作ってしまいました。 '子フォームをすべてアンロードする関数 Sub Close_AllChildForm() '子フォームをすべて閉じます Do While Not (Me.ActiveForm Is Nothing) '現在のアクティブ子フォームをアンロードする Unload Me.ActiveForm 'フォーカスを別の子フォームに移します DoEvents Loop End Sub Private Sub MDIForm_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) 'クリックボタンごとの処理をします If Button = vbLeftButton Then '子フォームの新規作成をします Dim frm As Form1 Set frm = New Form1 frm.Show ElseIf Button = vbRightButton Then 'すべての子フォームをアンロードします Close_AllChildForm End If End Sub |