Variable public garde la méme valeur

Fermé
fatma - 22 févr. 2014 à 13:18
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 - 22 févr. 2014 à 17:04
bonjour,
j'ai un problème de renouvellement de connexion.
j'ai deux formes
dans la forme 1( frmlogin)j'ai un variable public
Public niveau
dans la forme 2( frmglobale) on a recuperation de variable public

Private Sub Form_Load()


If frmlogin.niveau = 1 Then
cmdadmin.Enabled = False
cmdchanger.Enabled = False

Else
If frmlogin.niveau = 2 Then
cmdadmin.Enabled = False
cmdchanger.Enabled = False
cmdcrea.Enabled = False
cmdevolution.Enabled = False
cmddemandederog.Enabled = False

End If
End If

End Sub

ça marche

si j'ai déconnecté

frmlogin.Show
frmglobale.Hide

lors de deuxième connexion j'ai modifiée les donnes.
l'application affiche l'ancienne variable public .
merci d'avence

3 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
22 févr. 2014 à 15:24
Bonjour,

Faudrait montrer le code de frmlogin
0
bonjour,
mon code (from login) est la suite:

Dim Baseaccess As Connection


Dim Recconnexion As Recordset
Public niveau



Private Sub Cmdvalider_Click()
Set Recconnexion = New Recordset
Recconnexion.Open "SELECT * from Utilisateur where Identifiant='" & txtlogin.TEXT & "'", Baseaccess, adOpenStatic, adLockOptimistic

If Recconnexion.EOF = False Then
If (txtmotdepasse = Recconnexion.Fields("mot_de_passe")) Then

niveau = New Recordset
niveau = Recconnexion.Fields("Niveau")
Text1.TEXT = niveau
frmglobale.Show vbModeless
frmlogin.Hide


frmmotdepasse.Command1.Caption = Recconnexion.Fields("Identifiant")
frmmotdepasse.Command2.Caption = Recconnexion.Fields("Nom_Prénom")
frmmotdepasse.Command3.Caption = Recconnexion.Fields("Niveau")
frmcreation1.txtid.TEXT = Recconnexion.Fields("Nom_Prénom")
frmevolution1.cmdid.Caption = Recconnexion.Fields("Nom_Prénom")

Else

MsgBox "Erreur : Mot de passe incorrecte.Veuillez ressaisir", 16, "Connexion"
txtlogin = ""
txtmotdepasse = ""
txtlogin.SetFocus
End If

Else
MsgBox "Erreur : Login incorrecte.Veuillez ressaisir", 16, "Connexion"
txtlogin = ""
txtmotdepasse = ""
txtlogin.SetFocus
End If


End Sub
merci d'avancer
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
22 févr. 2014 à 17:04
Re,

frmGlobale:
vu que vous prenez l'evenement Form_Load, il faut utiliser Unload Me pour la sortie de cette frm.

si vous aviez utilise l'evenement Form_Activate alors ME.Hide serait Ok. Le .hide fait que la form est toujours en memoire, donc le pointeur de programme ne repasse pas dans l'evenement from_Load vu que la form n'a pas ete "unloadee"(dechargee de la memoire)
0