Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin

Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Tutorials
Autor
Nachricht
tr4st
Überflieger
Überflieger

Anmeldedatum: 16.04.2008
Beiträge: 486

Mit mehreren Formen arbeiten
Verfasst am: 15.06.2009, 16:45

Mit mehreren Formen arbeiten


1. Allgemeines


Da man immer wieder mit mehreren Formen arbeiten muss, aber viele nicht wissen wie man das am besten macht, hab euch mal ein kleines Tutorial geschrieben. Mehrere Formen braucht man vorallem dann, wenn ein weiteres Fenster aufmachen will und man das alte trotzdem noch sehen soll (z.b ein Optionsmenu) , bzw die Fenster so verschieden sind, dass es zu viel Aufwand wäre, alle Objekte per .Visible sichtbar bzw unsichtbar zu machen.


2. Verwendung


Zuerst muss man natürlich eine neue Form hinzufügen, per Rechtsklick auf das akutelle Projekt im Projektmappenexplorer -> Hinzufügen -> Windows Form, dann noch Namen eingeben -> Fertig

Ich nenne unsere Form mal Optionsmenu, die Hauptform ist bei mir Mainform

Wir könnten nun einfach Form2.Show und Form2.Close verwenden und fertig, aber die Methode ist nicht sehr praktisch, zumal die 2 Form dann nicht wirklich zu ist, sondern noch im Hintergrund läuft und einen Haufen an Speicher verbraucht.

Daher deklarieren wir uns erstmal eine Variable als Form:

Code:
    <br />Public Form2 As Optionsmenu
Nun kommen die beiden Subs zum Öffnen bzw. Schließen der Form:

Code:
Private Sub OpenForm2()<br />        Form2 = New Optionsmenu()<br />        Form2.Show()<br />End Sub<br /><br />Private Sub CloseForm2()<br />        Form2.WindowState = FormWindowState.Minimized<br />        Form2.Close()<br />End Sub
Aufrufen geht dann einfach so:

Code:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e _<br /> as System.EventArgs) Handles Button1.Click<br />OpenForm2()<br />End Sub
Bzw. das ganze mit CloseForm2

Das Minimieren dient dazu, dass der Garbage Collector die Form aus dem Ram schaufelt, sonst würde die Applikation immer mehr Ram brauchen, umso öfter man die 2. Form aufruft und wieder schließt.

Es muss auch andere Wege geben sie aus dem Ram zum Entladen, aber das ist die einzig mir bekannte ^^ Seltsamerweiße bleibt der Ramverbrauch trotzdem sehr hoch, wenn man die 2. Form vor dem Minmieren, per .Visible unsichtbar macht. Daraus bin noch nicht so schlau geworden, wenn mir wer weiterhelfen kann, wäre ich dankbar, dann kann ich das Tutorial verbessern ^^

Das ganze lässt sich natürlich auf beliebig viele Formen erweitern.


3. Von einer Form Daten an eine Andere senden


Nun das ist im Grunde kein Problem, soll es an eine Variable sein, muss diese nur Public deklariert sein, also z.b dieser Code in der Mainform:

Code:
Public Passwort As String
Geändert wird die Variable von der 2. Form (Optionsmenu) so:

Code:
Mainform.Passwort = "1337"
Wenn es sich um eine Eigenschaft eines Objektes handelt, macht man es genauso, einfach in der 2. Form

Code:
Mainform.Textbox1.Text = "vb-x.org"
Ist also wirklich einfach Wink


Dieses Tutorial wurde von Bahamut geschrieben!
_________________
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB.NET] Tutorials

Tags: formen arbeiten, mehreren formen

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Wie kann ich mich bei euch anmelden?? 796 20.05.2002, 00:28
Keine neuen Beiträge Passwort Generator by sollniss 1269 28.11.2008, 17:03
Keine neuen Beiträge Eine kleine Frage an euch.. 906 30.09.2007, 08:57
Keine neuen Beiträge TUT zur Passwort abfrage 1013 10.08.2007, 15:06
Keine neuen Beiträge IP Stealer example 4 RuaP and vb-x.org 1093 30.04.2007, 16:20
 



[ Time: 0.1257s ][ Queries: 81 (0.0179s) ][ GZIP on - Debug on ]