Hur att stänga ett formulär öppnade av ShowDialog

August 12

Microsofts Visual Basic gör det enkelt att bygga dialogbaserade former. Helt enkelt dra några kontroller på formytan, tillsätt lite kod, sedan ringa ShowDialog metod för att göra formen visas. Stänga formen är inte lika intuitivt. Istället för att bara ringa nära metoder beslutade ramverks designers att vi först ska ställa DialogResult egenskapen att återvända kontrollen till den viktigaste formen, låt denna form anropar metoden close. Följ dessa steg för att lära sig det rätta sättet att stänga en dialogruta.

Instruktioner

1 Öppna Visual Studio och skapa ett nytt fönster blankett projekt. Klicka på "File" och sedan "Nytt projekt" för att öppna den nya formen fönster. Välj Visual Basic, Windows, Windows-formulär projekt och kalla den "DialogDemo."

2 Skapa en dialogform. Klicka på "Project" och sedan "Lägg till Windows-formulär." Namnge formuläret "DialogForm" och klicka på "OK".

3 Lägg till två knappar för att dialogform. Klicka på ikonen Toolbox och dra två knappar på formuläret. Högerklicka på den första knappen och välj sedan "Egenskaper". När listan egenskapen visas ändra namnet egenskap till "btnOK" och ändra texten egenskap till "OK". Klicka på "Escape" för att stänga egenskapsfönstret. Upprepa dessa steg för att ändra andra knappens namn till "btnCancel" och text till "Avbryt".

4 Dubbelklicka på "OK" och koden redigeringsfönstret visas. Ändra koden på följande sätt:

Private Sub btnOK_Click (ByVal avsändaren som System.Object, ByVal e Som System.EventArgs) Handtag btnOK.Click

DialogResult = DialogResult.OK

End Sub

Ställa in egenskapen DialogResult signalerar ramen för att överföra kontrollen tillbaka till det anropande programmet. Värdet på DialogResult blir returvärdet av ShowDialog metoden. Gemensamma värderingar är "OK", "Avbryt" "Ja", "Nej" och "Avbryt". Här återvänder vi "OK."

5 Högerklicka någonstans på redigeringsfönstret och välj "Visa Designer." När dialogrutan formen visas, dubbelklickar du på knappen "Avbryt" tillsätt sedan följande kod:

Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click

DialogResult = DialogResult.Cancel

End Sub

Här återvänder vi "Cancel".

6 Högerklicka Form1.vb på Solution Explorer och välj "Visa Designer." Den ursprungliga formen visas. Dra en knapp i verktygsfältet på formuläret dubbelklicka sedan på knappen. När redigeringsfönstret visas, ange följande kod.

Private Sub btnTest_Click (ByVal avsändaren som System.Object, ByVal e Som System.EventArgs) Handtag btnTest.Click

Dim frm Som New DialogForm

Om frm.ShowDialog = DialogResult.OK Därefter

MsgBox("OK")

Annan

MsgBox("Canceled")

End If

frm.Close ()

End Sub

När knappen blir klickade, skapar vi en ny instans av dialogform, sedan ringa sin ShowDialog metod. Detta öppnar dialogrutan formen och väntar på användarens input. När någon av knapparna blir klickade, får kontroll skickas tillbaka till Formulär1, och vi visar ett meddelande baserat på värdet av DialogResult. Efter att vi stänger formuläret.

7 Klicka på "F5" för att testa programmet.

Tips

  • Använd dialogblankettens AcceptButton och CancelButton egenskaper för att ställa in åtgärder för "Enter" och "Escape" nycklar.

        

Välkommen till dig för att skicka en kommentar:

            
            
            
            

© 2020 Astrixsoft.com | Contact us: webmaster# astrixsoft.com