IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Onglet : rendre non visibles des controles sur changement de page


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Avril 2004
    Messages : 87
    Points : 60
    Points
    60
    Par défaut Onglet : rendre non visibles des controles sur changement de page
    Bonjour,

    Voilà, j'ai un formulaire avec des listes déroulantes.
    En dessous j'ai un onglet avec 6 pages.
    Je voudrais que lorsque je passe sur une autre page, les listes déroulantes deviennent non visibles (en fonction des pages actives, ce ne sont pas les mêmes listes).

    Voilà mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    Private Sub CtlTab0_Change()
    If Me.Données_générales.Enabled = True Then
        Me.Debut.Visible = True
        Me.Fin.Visible = True
        Me.Donnees.Visible = True
    End If
     
    If Me.Accompagnement.Enabled = True Then
        Me.Debut.Visible = True
        Me.Fin.Visible = True
        Me.Donnees.Visible = True
    End If
     
    If Me.Diplômes.Enabled = True Then
        Me.Debut.Visible = True
        Me.Fin.Visible = True
        Me.Donnees.Visible = False
    End If
     
    If Me.Cohortes.Enabled = True Then
        Me.Donnees.Visible = True
        Me.Debut.Visible = False
        Me.Fin.Visible = False
    Else
        Me.Debut.Visible = True
        Me.Fin.Visible = True
    End If
     
    End Sub
    Mais ça ne fonctionne pas, je crois que la fonction Enabled n'est pas appropriée pour dire si on est sur la page active ou pas.

    J'espère que j'ai été claire dans mes explications..

    Merci d'avance pour vos réponses!

    Mawi

  2. #2
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,
    Voici un petit exemple, avec un formulaire contenant deux ZDL (Modifiable1 et Modifiable2)
    Sur ce même formulaire un contrôle Onglet (CtlTab4), comportant 3 pages.
    Sur l'événement 'Sur changement' de CtlTab4, tu tape le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Sub CtlTab4_Change()
    Select Case CtlTab4()
        Case 0
        Me.Modifiable1.Visible = True
        Me.Modifiable2.Visible = True
        
        Case 1
        Me.Modifiable2.Visible = False
        Me.Modifiable1.Visible = True
        
        Case 2
        Me.Modifiable2.Visible = True
        Me.Modifiable1.Visible = False
    End Select
    
    End Sub
    Ceci est un exemple de base, après il suffit de l'adapter à ton application
    Bonne continuation.

  3. #3
    Invité
    Invité(e)
    Par défaut Je pense ....
    Salut Mawi,

    Le code à utiliser est le suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub CtlTab0_Change()
    ChoixOnglet = Me.CtlTab0.Value + 1
    ...
    Select Case ChoixOnglet
        Case 1 ' Page 1 sélectionnée
     
        Case 2 ' Page 2 sélectionnée
    End Select
    Voilà

  4. #4
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Re,
    Dans ce cas, cette ligne n'est pas utile
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ChoixOnglet = Me.CtlTab0.Value + 1
    Si la première page à un index à zéro (0)

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Avril 2004
    Messages : 87
    Points : 60
    Points
    60
    Par défaut
    Merci pour vos réponses!

    J'ai fait ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    Private Sub CtlTab0_Change()
     
    Select Case CtlTab0()
        Case 0
        Me.Debut.Visible = True
        Me.Fin.Visible = True
        Me.Donnees.Visible = True
     
        Case 1
        Me.Debut.Visible = True
        Me.Fin.Visible = True
        Me.Donnees.Visible = True
     
        Case 2
        Me.Debut.Visible = True
        Me.Fin.Visible = True
        Me.Donnees.Visible = False
     
        Case 3
        Me.Donnees.Visible = True
        Me.Debut.Visible = False
        Me.Fin.Visible = False
     
        Case 4
     
        Case 5
     
    End Select
    End Sub
    et ça fonctionne!

    merci encore!

  6. #6
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Re,
    Tu peux modifier ton code par celui-çi, car la sélection de ta page 0 et 1 est identique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Select Case CtlTab0()
        Case 0 , 1
        Me.Debut.Visible = True
        Me.Fin.Visible = True
        Me.Donnees.Visible = True
        
        Case 2
        Me.Debut.Visible = True
        Me.Fin.Visible = True
        Me.Donnees.Visible = False
    ....
    ....
    Bonne continuation.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Copier des controles sur une autre page d'un tabpage
    Par mecyber25 dans le forum C#
    Réponses: 20
    Dernier message: 19/09/2012, 19h23
  2. Rendre visible des contrôles sur un Form ayant des zones transparentes
    Par ProgElecT dans le forum Vos contributions VB6
    Réponses: 8
    Dernier message: 20/09/2007, 19h25
  3. [VBA]filtrage des controles sur leur nom
    Par Invité dans le forum VBA Access
    Réponses: 5
    Dernier message: 17/04/2007, 14h23
  4. Réponses: 8
    Dernier message: 07/08/2006, 17h40
  5. [C#2.0]Dupliquer des controles sur une autre form
    Par chnew dans le forum Windows Forms
    Réponses: 5
    Dernier message: 12/05/2006, 09h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo