Jumat, 06 April 2012

Bring to front MdiChild in Mdi Container - VB.Net

Salah satu hal yang biasanya ada didalam aplikasi yang memaikai mode Kontiner MDI adalah fasilitas untuk mengecek apakah Mdichild telah aktiv di MDI kontiner, untuk kemudian di bawa ke posisi paling depan, ketimbang kita harus meng-createnya lagi. berikut ini adalah kode untuk keperluan tersebut(Ref: didapat dari milist bytes.com, dengan adopsi cara saya :) ), semoga bermanfaat.


Private Function isFormActive(ByVal TheFormName As String) As Boolean
        Try
            Dim ResultSearch As Boolean
            For Each myChild As Form In Me.MdiChildren
                If myChild.Name = TheFormName Then
                    ResultSearch = True
                    myChild.BringToFront()
                    Exit For
                Else
                    ResultSearch = False
                End If
            Next
            Return ResultSearch
        Catch ex As Exception
            MessageBox.Show(ex.Message.ToString, "Error to find the form", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End Try

2 komentar:

Rizal Putra mengatakan...

Bukannya dengan kode ini sudah cukup :
Form1.Show()
Form1.Focus()

Kang Admin mengatakan...

Untuk Bro Rizal, Bagaimana jika Form Child yg telah aktif di MDI Form lebih dari 1? dan bukankah kita juga tidak tahu jika form1 misalnya telah aktif(Telah dicreate dan aktif hanya saja posisinya mungkin di belakang form lain)atau belum di MDI Form? bukankah kita mesti mencari tahunya terlebih dahulu? baru kemudian jika ternyata sudah ada maka Form tersebut cukup di Bawa kedepan menggunakan myChild.BringToFront() dan jika belum ada maka kita Create.

Inilah maksud dari function yang saya buat, but terimakasih atas kunjungan dan informasinya. salam kenal