PDA

Vollständige Version anzeigen : Eigenschaften eines Steuerelements auswerten


Zwicki
18.05.2001, 11:06
Guten Tag alle miteinander!

Ich hab da so ein schlaues Buch mit dem ich zur Ziet versuche VB zu lernen. Wende ich nun die Dinge darin an, hab ich ein Problem:

Hier mein Code:
****************************************
Private Sub cmdKennwort_Click()

On Error GoTo Err_cmdKennwort_Click

Dim stDocName As String
Dim stLinkCriteria As String
Dim vntUser As Variant
Dim vntKennwort As Variant
vntUser = txtUser.Text
vntKennwort = txtKennwort.Text

If vntUser = "Bernd" And vntKennwort = "Bernd" Then
stDocName = "Start"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit Sub

Else
MsgBox Prompt:="Das war leider das falsche Kennwort oder der falsche Username!"
txtUser.SetFocus
txtUser.Text = ""
txtKennwort.SetFocus
txtKennwort.Text = ""
txtUser.SetFocus
Exit Sub
End If
Err_cmdKennwort_Click:
MsgBox Err.Description
Exit Sub

End Sub
****************************
Dieser ist bei einer Schaltfläche beim Ereignis OnClick hinterlegt.
Jetzt bekomme ich die Fehlermeldung "Sie können die Eigenschaften oder Methoden eines Steuerelements nur auswerten, wenn das Steuerelement den Fokus hat." Die Hinweise SetFocus zu benutzen habe ich ausprobier, bin aber zu keinem Ergebnis gekommen.

Wer weiß Rat?

Merci tausend

Stephan

Boras
18.05.2001, 11:25
Hallo Stephan

Ich bin nicht der ungeschlagene Access Guru. Ich denke aber deine Probleme sind folgende:

vntUser = txtUser.Text
vntKennwort = txtKennwort.Text
Hier solltest Du jeweils vor dem Auslesen der Eigenschaft (.Text) ein SetFocus machen. Also in etwa so:
txtUser.SetFocus
vtnUser = txtUser.Text
txtKennwort.SetFocus
vtnKennwort = txtKennwort.Text


Folgendes könnte auch problematisch sein:
Exit Sub
End If

Err_cmdKennwort_Click:
MsgBox Err.Description
Exit Sub
Das Exit Sub sollte nach dem Enf If stehen. Verursacht wahrscheinlich keinen Fehler. Auf Deine Art wird das ExitSub aber nur im Else Fall ausgeführt, und wenn die If Bedingung erfüllt wurde, wird auch der Errorhandler ausgeführt, was du sicherlich nicht haben willst.

Stefan Kulpa
18.05.2001, 11:28
Hallo,

wechsle die Zuweisung wie folgt:

vntUser = txtUser.Value
vntKennwort = txtKennwort.Value

dann klappt's ...

Gruß

Zwicki
18.05.2001, 11:29
Danke Marc!

Funzt jetzt einwandfrei!