Se týkají Windows Forms

Po dlouhou dobu jsem měl tento problém, a tak nyní, jak řešit, že jsem se s vámi podělit.

Pokud z jedné formy na jinou formu s názvem Windows Windows ani majetek. Ukázat nebo. ShowDialog dokud jsem blízko druhé formy nemám kontrolu nad hlavním formuláři ... pokud se tyto dvě formy jsou "související". Vezměme si jednoduchý příklad pro pochopení konceptu a jak ji řešit.

Obraz je jednoznačně hlavní formulář s tlačítkem "přesunout červené panely" a červeným panelem. Stisknutím tlačítka fomrulario otevřenou jednu sekundu se čtyřmi tlačítky (nahoru, dolů, vlevo a vpravo). Po stisknutí tlačítka, které buď dělá, je přesunout červené panel ve směru uvedené.

Formulariosconectados

Viz Kodex Form1

 Public class Form1
     Private Sub Button1_Click (ByVal odesílatel jako System.Object, ByVal e As System.EventArgs) Madla Button1.Click
         Jako nový Form2 Dim vfrmForm2
         vfrmForm2.formulario1 = I
         vfrmForm2.ShowDialog ()
     End Sub
 End Class

a kód Form2

 Public class Form2

     Form1 Form1 jako veřejné

     BtnArriba_Click Private Sub (ByVal odesílatel jako System.Object, ByVal e As System.EventArgs) Handles btnArriba.Click
         formulario1.Panel1.Top formulario1.Panel1.Top = - 1
     End Sub

     BtnDerecha_Click Private Sub (ByVal odesílatel jako System.Object, ByVal e As System.EventArgs) Handles btnDerecha.Click
         formulario1.Panel1.Left = formulario1.Panel1.Left + 1
     End Sub

     BtnAbajo_Click Private Sub (ByVal odesílatel jako System.Object, ByVal e As System.EventArgs) Handles btnAbajo.Click
         formulario1.Panel1.Top = formulario1.Panel1.Top + 1
     End Sub

     BtnIzquierda_Click Private Sub (ByVal odesílatel jako System.Object, ByVal e As System.EventArgs) Handles btnIzquierda.Click
         formulario1.Panel1.Left formulario1.Panel1.Left = - 1
     End Sub
 End Class

Jak můžete vidět, není třeba příliš kód "připojit" formy. Kromě toho je třeba pouze jeden řádek navíc na každý formulář. V Form2 jsem se upozornit na následující prohlášení: Veřejné Form1 Form1 a jako Form1 vfrmForm2.formulario1 = Me. To způsobí, že Form1 instance v paměti je spojen s prohlášen Form2 Form1. Odtud jsem se může týkat a pracovat s jakoukoliv kontrolou Form1, jako je jednoduše volat to formulario1.panel1 panel1.

Doufám, že vás to tak užitečné s ním je pro mě.

3 Reakce na "Windows Forms týkají"

  1. Josel řekl:

    Velmi dobrá, i když máte šanci, můžete vysvětlit, jak zacházet s MDI formulář

    Salduso

  2. Romina říká:

    Tlačítka v druhém okně vzorky mohou být přiřazeny pohyb klíče?

  3. Leonel říká:

    to zajímavé, ale to tlačítko odpovídá červeném poli se nachází v from1, pq nefunguje příklad.

Komentář