Pokud nyní spustíme aplikaci, tak se nám zobrazí pouze formulář frmHlavni. Budeme chtít, aby při načítání formuláře frmHlavni se také zobrazil formulář frmRidici. Využijeme k tomu událost Load formuláře frmHlavni.
V Solution Eplorer poklepeme na frmHlavni, tím se nám tento formulář zobrazí. Nyní potřebujeme naprogramovat událost Load. Stačí, pokud na formulář poklepeme myší. Otevře se nám prostředí pro psaní programového kódu, kde se vytvoří prázdná procedura frmHlavni_Load. Do této procedury zapíšeme následující kód :
Private Sub frmHlavni_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
MyFrmHlavni = Me
Dim frmRidici As New frmRidici
frmRidici.MdiParent = MyFrmHlavni
frmRidici.Show()
End Sub
Na obrázku je vidět, jak je červeně podtržená proměnná MyFrmHlavni. Musíme provést deklaraci této proměnné. Tuto proměnnou budeme využívat v různých formulářích, proto ji nadeklarujeme jako globální proměnnou.
Globální proměnné se deklarují pomocí modulů, proto vytvoříme nový modul. Přidáme nový modul tak, že klikneme pravým tlačítkem myši v Solution Explorer na název projektu Sklad a vybereme Add->Module... . Necháme defaultní název Module1.vb.
Napíšeme následující programový kód :
Public MyFrmHlavni As frmHlavni
Pokud spustíme aplikaci, tak se nám zobrazí formulář frmRidici v levém horním rohu. Napíšeme následující kód do události Load formuláře frmRidici :
Public Class frmRidici
Private Sub frmRidici_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Cursor.Current = Cursors.WaitCursor
'///Spocitani souradnic pro umisteni formulare
Dim x As Integer = (MyFrmHlavni.Width / 2) - (Me.Width / 2)
Dim y As Integer = (MyFrmHlavni.Height / 2.2) - (Me.Height / 2)
Me.Location = New Point(x, y)
Cursor.Current = Cursors.Default
End Sub
End Class
Protože formulář bude obsahovat více programového kódu, je možné si kód rozdělit do několika regiónů. Událost Load ohraničíme příkazy #Region "Udalosti formulare" a #End Region .
Aplikaci budeme zavírat pomocí tlačítka btnKonec na formuláři frmRidici. Musíme proto přidat novou událost Click tlačítka btnKonec. Poklepeme na tlačítko btnKonec a tím se vytvoří prázdná událost Click. Událost bude obsahovat příkaz End. Pro událost si vytvoříme nový región nazvaný Tlacitka.
#Region "Tlacitka"
Private Sub btnKonec_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKonec.Click
End
End Sub
#End Region
Výsledný kód formuláře frmRidici je :
Public Class frmRidici
#Region "Udalosti formulare"
Private Sub frmRidici_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Cursor.Current = Cursors.WaitCursor
'///Spocitani souradnic pro umisteni formulare
Dim x As Integer = (MyFrmHlavni.Width / 2) - (Me.Width / 2)
Dim y As Integer = (MyFrmHlavni.Height / 2.2) - (Me.Height / 2)
Me.Location = New Point(x, y)
Cursor.Current = Cursors.Default
End Sub
#End Region
#Region "Tlacitka"
Private Sub btnKonec_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKonec.Click
End
End Sub
#End Region
End Class