0

複数のフォームで構成されるプロジェクトがあり、達成できない特定のモダリティ ルールでプロジェクトを開こうとしています。

まず、メインフォーム「Form1」、次に「Form11」と「Form111」、「Form12」と「form121」

メインフォーム「Form1」から、次のようにフォーム「Form11」と「Form12」のみを開始できます。

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Form11.Show()
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    Form12.Show()
End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    Me.Close()
End Sub
End Class

この状況で、「Form11」と「Form12」が表示されたら、「Form1」の Button4 を押してすべてのフォームを閉じることで、アプリケーションを簡単に終了できます。

さて、ここに別のフォーム「Form111」があり、「Form11」のボタンをクリックしてモーダルで開きます...

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim f As New Form111
    f.ShowDialog(Me)
    f = Nothing
End Sub

ここで、私のプロジェクトについて誤解や誤解があります。

「Form111」が開かれているとき、「Form11」をブロックするのが好きですが、「Form1」ではなく、「Form2」を開くか、非モーダルフォーム「Form11」のモーダルフォーム「Form111」が開かれているアプリケーションを終了します。

説明されているプロジェクト構成とその方法でそのような機能を実現することは可能ですか?

4

1 に答える 1