Hallo Forum,
ich möchte einen Login schreiben, bei dem 1 einen Speicherzugriff hat und 2 die Daten nur lesen darf. Dafür hab ich folgenden Code geschrieben:
[highlight=vbnet]
Public mBenutzerSpeichernErlaubt As Boolean
Public Sub Login()
Dim f As New LoginForm
If f.ShowDialog Then
mBenutzerSpeichernErlaubt = ÜberprüfeBenutzer(f.tb_Benutzer.Text, f.tb_Passwort.Text)
End If
End Sub
Private Function ÜberprüfeBenutzer(ByVal Benutzer As String, ByVal Passwort As String) As Boolean
If Benutzer = "1" And Passwort = "1" Then
Return True
ElseIf Benutzer = "2" And Passwort = "2" Then
Return False
ElseIf Not Benutzer = "1" Or "2" And Passwort = "1" Or "2" Then
MsgBox("Die Eingabe war nicht richtig", MsgBoxStyle.OkOnly, "Bitte überprüfen Sie Ihre Eingabe noch einmal")
End if
End Function
...
Dim f As New Form (id)
f.SpeichernErlauben(mBenutzerSpeichernErlaubt)
' Übergabe der Variablen ,ob gespeichert werden darf
f.ShowDialog()
...
[/highlight]
Ich möchte, dass wenn er true weitergibt, es bedeutet, dass man speichern darf; und wenn er false weitergibt, dass man nur lesen darf. Aber wenn man ein falsches Wort einträgt, dann soll nur eine Warnung kommen und dann soll das Login-Form wieder leer sein zur neuen Eingabe.
Im Moment gibt er bei einer falschen Eingabe zwar die msgbox aus, aber er geht trotzdem weiter zum nächsten Form statt zurück zum Login! Er geht einfach weiter zum nächsten Form und nimmt anscheinend den Wert false mit.
Was ist falsch an diesem Code?
Vielen Dank
ich möchte einen Login schreiben, bei dem 1 einen Speicherzugriff hat und 2 die Daten nur lesen darf. Dafür hab ich folgenden Code geschrieben:
[highlight=vbnet]
Public mBenutzerSpeichernErlaubt As Boolean
Public Sub Login()
Dim f As New LoginForm
If f.ShowDialog Then
mBenutzerSpeichernErlaubt = ÜberprüfeBenutzer(f.tb_Benutzer.Text, f.tb_Passwort.Text)
End If
End Sub
Private Function ÜberprüfeBenutzer(ByVal Benutzer As String, ByVal Passwort As String) As Boolean
If Benutzer = "1" And Passwort = "1" Then
Return True
ElseIf Benutzer = "2" And Passwort = "2" Then
Return False
ElseIf Not Benutzer = "1" Or "2" And Passwort = "1" Or "2" Then
MsgBox("Die Eingabe war nicht richtig", MsgBoxStyle.OkOnly, "Bitte überprüfen Sie Ihre Eingabe noch einmal")
End if
End Function
...
Dim f As New Form (id)
f.SpeichernErlauben(mBenutzerSpeichernErlaubt)
' Übergabe der Variablen ,ob gespeichert werden darf
f.ShowDialog()
...
[/highlight]
Ich möchte, dass wenn er true weitergibt, es bedeutet, dass man speichern darf; und wenn er false weitergibt, dass man nur lesen darf. Aber wenn man ein falsches Wort einträgt, dann soll nur eine Warnung kommen und dann soll das Login-Form wieder leer sein zur neuen Eingabe.
Im Moment gibt er bei einer falschen Eingabe zwar die msgbox aus, aber er geht trotzdem weiter zum nächsten Form statt zurück zum Login! Er geht einfach weiter zum nächsten Form und nimmt anscheinend den Wert false mit.
Was ist falsch an diesem Code?
Vielen Dank
Comment