0

今日は、パネル コントロールと MDI 子フォームにいくつか問題があります。私の問題は、パネル コントロールを子フォームの背面に設定できないことです。私の頭はこの問題を解決しようとしてぐるぐる回っています。

MDI クライアントの Z オーダーの問題

4

1 に答える 1

1

Panel を ParentForm に追加したようです。そうすると、一番上に表示されます。ChildForm に割り当てる必要があります。他のオプションの 1 つは、ドッキング可能なパネルを作成し、それを親の側面にドッキングすることです。

これらの記事をご覧ください

  1. http://bytes.com/topic/visual-basic-net/answers/382474-how-do-you-bring-mdi-child-windows-front-if-mdi-parent-has-controls
  2. http://social.msdn.microsoft.com/Forums/en-AU/winforms/thread/a9682277-d612-41e8-b5c0-44434b0bcb22

あなたのコメントに基づいて、100msに設定されたタイマーでこのようなことができます

Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
    Panel1.Visible = CheckForMDIChildren()
End Sub

Private Function CheckForMDIChildren() As Boolean
    If Me.MdiChildren.Count > 0 Then
        For Each frm As Form In Me.MdiChildren
            If frm.Visible Then Return False
        Next
    End If
    Return True
End Function
于 2012-10-15T05:37:38.013 に答える