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

IHM Discussion :

2 cadres d'option- 6 boutons radio-interactions


Sujet :

IHM

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    86
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 86
    Points : 74
    Points
    74
    Par défaut 2 cadres d'option- 6 boutons radio-interactions
    Bonjour à tous
    Je viens de lire des posts en espérant trouver une réponse à mon pb simple mais que je n'arrive pas à résoudre
    Voilà:
    J'ai deux groupes d'options de trois boutons radio chacun.
    Le premier s'appelle cdr_orientation avec les boutons suivants: opt_egpa; opt_maintien et opt_mdph . Ces boutons radio remplissent un champ nommé "orientation" avec les valeurs suivantes: 1, 2, 3
    Le second groupe s'appelle cdr_affectation avec les trois boutons radio suivant: opt_segpa; opt_erea et opt_college. Ces boutons radio remplissent un champ nommé "affectation" avec les valeurs suivantes: 1, 2, 3.
    Certaines combinaisons ne sont pas possibles, d'autres sont automatiques. Des valeurs contenues dans les champs "orientation" et "affectation" dépendent des requêtes qui vont donner des états. Je veux sécuriser la saisie selon le tableau suivant:
    si opt_egpa (de cdr_orientation) alors not opt_college (de cdr_affectation)
    si opt_maintien (de cdr_orientation) alors opt_college (de cdr_affectation)
    si opt_mdph (de cdr_orientation) alors not opt_college, not opt_segpa ni not opt_erea (de cdr_affectation)
    et je veux donc que la sélection (le point noir!) se mette sur le bon bouton radio.
    En lisant les posts ci-dessus, j'ai essayé ceci (qui ne marche pas!):
    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
    Private Sub cdr_orientation_Click()
    Select Case cdr_orientation
    Case 1
    Me.opt_maintien.Value = True
    Me.opt_college.Value = True
    Case 2
    Me.opt_mdph.Value = True
    Me.opt_college.Value = False
    Me.opt_erea.Value = False
    Me.opt_segpa.Value = False
    Case 3
    Me.opt_egpa.Value = True
    Me.opt_college.Value = False
    End Select
    End Sub
    Je l'ai essayé sur un afterupdate() aussi mais j'obtiens une erreur 2448.
    "Impossible d'attribuer une valeur à cette objet".
    Devant cette impasse, je me tourne vers vous pour essayer de comprendre ce que j'ai oublié (ou que je ne connais pas).
    Merci d'avance de votre aide.
    Sellig60
    Oise

  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
    Re,

    D'abord je pense que tu devrais mettre ton code sur l'événement Après MAJ du contrôle cdr_orientation

    Maintenant, vite fait je me suis penché sur ton problème. Pour obtenir la condition suivante (si opt_maintien (de cdr_orientation) alors opt_college (de cdr_affectation))
    Sur événement Après MAJ du contrôle cdr_orientation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub cdr_orientation_AfterUpdate()
    Select Case cdr_orientation
    Case 2
        Me.opt_college.Enabled = True
        Me.opt_segpa.Enabled = False
        Me.opt_erea.Enabled = False
        Me.cdr_affectation.Value = 3
    End Select
    End Sub
    Il y à certainement plus simple et plus propre au niveau code, mais c'est une possibilité

    Sinon pour ton message d'eereur
    Je l'ai essayé sur un afterupdate() aussi mais j'obtiens une erreur 2448.
    "Impossible d'attribuer une valeur à cette objet".
    Tout simplement ICI, tu essayais d'affecter une valeur TRUE ou FALSE à une case d'option qui attend une valeur numérique

  3. #3
    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
    Allez aujourd'hui, c'est mon jour de bonté et en plus il fait beau, donc voici le code complet.
    Les noms des contrôles utilisés sont ceux que tu as donné.
    Mettre ce code dans l'événement 'Après mise à jour' du groupe d'options cdr_orientation
    Les cases d'option du groupe d'options cdr_affectation doivent avoir leurs propriétés 'Activé' sur NON
    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
    Private Sub cdr_orientation_AfterUpdate()
    Select Case cdr_orientation
    
    'si opt_egpa (de cdr_orientation) alors not opt_college (de cdr_affectation)
    Case 1
        Me.opt_college.Enabled = False
        Me.opt_segpa.Enabled = True
        Me.opt_erea.Enabled = True
        Me.cdr_affectation.Value = ""
        
    'si opt_maintien (de cdr_orientation) alors opt_college (de cdr_affectation)
    Case 2
        Me.opt_college.Enabled = True
        Me.opt_segpa.Enabled = False
        Me.opt_erea.Enabled = False
        Me.cdr_affectation.Value = 3
        
    'si opt_mdph (de cdr_orientation) alors not opt_college, not opt_segpa ni not opt_erea (de cdr_affectation)
    Case 3
        Me.opt_segpa.Enabled = False
        Me.opt_erea.Enabled = False
        Me.opt_college.Enabled = False
        Me.cdr_affectation.Value = ""
    End Select
    End Sub
    Voilà, en tout cas chez moi ça fonctionne correctement. Pour toute amélioration du code, bien sur je suis prenneur
    Bonne continuation

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    86
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 86
    Points : 74
    Points
    74
    Par défaut Merci! Merci! Merci!
    Je vous remercie pour ce coup de main.
    Je vais m'y remettre.
    Décidément, je ne me trompe pas quand, dans des animations pédagogiques, je fais de la pub pour ce site.
    bon week-end et attention au coup de soleil!
    Sellig60
    Beauvais
    Oise

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 14/05/2009, 21h47
  2. Réponses: 6
    Dernier message: 14/12/2006, 11h36
  3. Groupe d'options et bouton radio
    Par climz dans le forum IHM
    Réponses: 10
    Dernier message: 10/06/2006, 10h52
  4. Réponses: 5
    Dernier message: 29/05/2006, 14h27
  5. Réponses: 7
    Dernier message: 26/05/2006, 14h14

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