Willkommen im PC-Welt-Forum
Liebe Leser,
Wenn dies Ihr erster Besuch hier ist, lesen Sie bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Sie müssen sich vermutlich registrieren, bevor Sie Beiträge verfassen können. Klicken Sie rechts auf 'Jetzt registrieren.', um den Registrierungsprozess zu starten.
Wenn dies Ihr erster Besuch hier ist, lesen Sie bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Sie müssen sich vermutlich registrieren, bevor Sie Beiträge verfassen können. Klicken Sie rechts auf 'Jetzt registrieren.', um den Registrierungsprozess zu starten.
Ergebnis 1 bis 5 von 5
-
28.11.2010, 15:33 #1
Kbyte
- Registriert seit
- 10.2008
- Beiträge
- 201
VB2008 wert der Variable an die 2te Form übergeben?
Wie kann ich eine Varible von der 1te Form hab an die 2teForm übergeben ?
Was kann ich machen damit die variable 'stunden' den Wert von Form 1 bekommt?PHP-Code:
// das ist die erste Form
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim stunden As Integer
stunden = TextBox1.Text
Me.Hide()
form2.show()
End Sub
End Class
//die Zweite
Public Class Form2
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Label1.Text = stunden
End Sub
End Class
-
28.11.2010, 16:01 #2
Aus der Hilfe:
Zur Deklaration von Variablen verwenden Sie normalerweise eine Dim-Anweisung. Eine Deklarationsanweisung kann innerhalb einer Prozedur zur Erstellung einer Variablen auf Prozedurebene oder zu Beginn eines Moduls im Deklarationsabschnitt zur Erstellung einer Variablen auf Modulebene plaziert werden.
In dem folgenden Beispiel wird die Variable strName erstellt und der Datentyp String angegeben.
Dim strName As String
Ist diese Anweisung Teil einer Prozedur, so kann die Variable strName nur in dieser Prozedur verwendet werden. Befindet sich diese Anweisung im Deklarationsabschnitt des Moduls, so ist die Variable strName für alle Prozeduren innerhalb des Moduls, aber nicht für Prozeduren in anderen Modulen des Projekts verfügbar. Damit diese Variable für alle Prozeduren des Projekts verfügbar ist, stellen Sie ihr die Public-Anweisung voran. Beispiel:
Public strName As String
-
28.11.2010, 17:24 #3
Da du das ganze aus der Textbox holst und es in keinster Weise weiter verarbeitest, könntest du dir die Variablen Zuweisung in Form 1 sparen und statt dessen den Inhalt der Textbox direkt in Form 2 abfragen.
Du nutzt also in Form 2 anstatt Label1.Text = stunden einfach Label1.Text = Form1.TextBox1.Text
Damit holst du dir den Inhalt der Textbox einfach direkt in das Label1 auf Form2, anstatt erst in eine Variable und von dort dann wieder raus.
Alternativ kannst du auch die Variable ansprechen, sofern du immer darauf achtest, sie PUBLIC zu deklarieren.MfG VB-Coder
-
28.11.2010, 22:49 #4
Kbyte
- Registriert seit
- 10.2008
- Beiträge
- 201
Danke es hat geklappt!
Und das mit dem PUBLIC klappt irgendwie bei mir nicht. Da das oben genannte nur ein Bsp war möchte ich gern wissen wie ich die Variable ind die andere Form übergeben kann.Alternativ kannst du auch die Variable ansprechen, sofern du immer darauf achtest, sie PUBLIC zu deklarieren.
so klappts nichtPHP-Code:
Public Class Form1
Public wert As String
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
wert = TextBox1.Text
Me.Hide()
Form2.Show()
End Sub
End Class
Public Class Form2
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Label1.Text = wert // "wert" ist nicht deklariert
End Sub
End Class
-
08.12.2010, 22:22 #5
Hier mal ein etwas erweiterter Beispielcode
Der dürfte Selbsterklärend sein. Falls dennoch etwas unklar ist, einfach nachfragen.
Code:Option Explicit On Public Class Form1 Public x As String Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If TextBox1.Text > "" Then x = TextBox1.Text Me.Hide() Form2.Show() Else MsgBox("TextBox1 enthält keinen Text" & vbCrLf & "Form2 kann nicht geöffnet werden !", vbCritical, "Fehler !") End If End Sub End ClassCode:Public Class Form2 Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Label1.Text = Form1.x End Sub End ClassMfG VB-Coder
12

Zitieren

Lesezeichen