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 :

Rendre un bouton invisible sous condition variable


Sujet :

IHM

  1. #1
    Membre à l'essai
    Homme Profil pro
    responsable hygiene
    Inscrit en
    Septembre 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : responsable hygiene
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2015
    Messages : 26
    Points : 13
    Points
    13
    Par défaut Rendre un bouton invisible sous condition variable
    Bonjour à toutes et à tous,

    J'ai un petit souci qui me semblait pourtant simple au départ, mais là je tourne en rond

    Dans le détail, j'ai un bouton (BTC_Importer) placé dans un formulaire F_Pers_Principal (gestion de personnel). Dans ce même Formulaire, j'ai 2 zones texte indépendantes, l'une se nomme FeuilleExcel (affiche le N° de la semaine en cours), et l'autre Dernier_Planning (affiche le N° de semaine du dernier planning importé à l'aide du bouton BTC_Importer).
    Afin d'éviter d'importer x fois le même planning, j'aimerai, tant que le planning affiché est celui de la semaine en cours, rendre invisible mon bouton BTC_Importer

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Form_Load()
    If FeuilleExcel = Dernier_Planning Then
    BTC_Importer.Visible = False
    End If
    End Sub
    J'ai essayé sur ouverture, chargement, réception focus du formulaire, sur mise à jour des zones texte, faire référence à une valeur fixe (Changer FeuilleExcel par le N° de la semaine en cours par exemple) ça marche quand je passe du mode création au mode formulaire, mais si j'ouvre directement en mode formulaire, le bouton est toujours visible.

    D'avance merci de votre aide

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    Bonjour,

    Le code que tu montres n'est pas au bon endroit : il faut le déclencher deux fois :

    - 1° dans l'événement Sur activation du formulaire (donc à chaque lecture d'un enregistrement) ;
    - 2° dans l'événement Après modification du contrôle « FeuilleExcel » (donc si l'utilisateur modifie la valeur de ce champ).
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  3. #3
    Membre à l'essai
    Homme Profil pro
    responsable hygiene
    Inscrit en
    Septembre 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : responsable hygiene
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2015
    Messages : 26
    Points : 13
    Points
    13
    Par défaut
    Bonjour Claude et merci de ton retour.
    Je viens d'essayer ce que tu m'as conseillé, mais ça ne change rien. Petite précision sur la construction de ma BD, le champ FeuilleExcel est mis à jour à partir d'un formulaire précédent,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub BTC_Gestion_Personnel_Click()
    DoCmd.OpenForm "F_Pers_Principal"
    Forms!F_Pers_Principal!FeuilleExcel = Semaine
    Forms!F_Pers_Principal.Refresh
    End Sub
    donc à l'ouverture de son form, et le champ Dernier_Planning se met à jour à partir d'un sous formulaire inclus dans mon formulaire de gestion de personnel.
    Ces champs se mettent bien à jour avec les bonnes donées dès l'ouverture du formulaire, mais il doit y avoir un bug entre ces 2 infos, c'est quand même curieux qu'un code aussi simple ne fonctionne pas.
    Au fait, j'ai aussi essaye l'inverse, c'est à dire donner au BTC_Importer la propriété Visible = non, et essayer de le rendre visible si mes champs FeuilleExcel et Dernier_Planning sont différents. Résultat identique, marche pas.

  4. #4
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    Forms!F_Pers_Principal.Refresh => écris plutôt Forms!F_Pers_Principal.Requery 


    Que se passe-t-il ?

    DoCmd.OpenForm "F_Pers_Principal" 
    Le formulaire s'ouvre, l'événement Sur activation se déclenche, mais FeuilleExcel est Null => donc ton bouton reste visible.

    Forms!F_Pers_Principal.Refresh  
    Tu sauvegardes l'enregistrement actif, cela ne déclenche pas l'événement Sur activation.

    Par contre avec Forms!F_Pers_Principal.Requery, tu provoques l'événement Sur activation.
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  5. #5
    Membre à l'essai
    Homme Profil pro
    responsable hygiene
    Inscrit en
    Septembre 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : responsable hygiene
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2015
    Messages : 26
    Points : 13
    Points
    13
    Par défaut
    Quand je remplace .Refresh par .Requery, mon sous formulaire ne se met pas à jour, et donc mon champ Dernier_Formulaire non plus.
    J'ai essayé d'ajouter une ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub BTC_Gestion_Personnel_Click()
    DoCmd.OpenForm "F_Pers_Principal"
    Forms!F_Pers_Principal!FeuilleExcel = Semaine
    Forms!F_Pers_Principal.Refresh
    Forms!F_Pers_Principal.Requery
    End Sub
    Mon sous formulaire et mon champ se met bien à jour, mais mon bouton est toujours visible

  6. #6
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    ... et tu as

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If FeuilleExcel = Dernier_Planning Then
    BTC_Importer.Visible = False
    End If
    dans l'événement Sur activation de F_Pers_Principal ?


    Si oui, je ne comprends pas.

    Si tu peux convertir ta base en format Access2000 (version dont je dispose), je veux bien regarder sur pièces pour comprendre ce qui se passe.

    Si non, je donne ma langue au chat en espérant qu'un autre forumeur puisse t'aider...


    P.-S. Vérifie ceci :
    - ouvre manuellement (pas au départ de l'autre formulaire) F_Pers_Principal ;
    - complète FeuilleExcel

    le bouton disparaît-il ?
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  7. #7
    Membre à l'essai
    Homme Profil pro
    responsable hygiene
    Inscrit en
    Septembre 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : responsable hygiene
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2015
    Messages : 26
    Points : 13
    Points
    13
    Par défaut
    En effet, j'ai bien ce code sur activation de F_Pers_Principal

    TU vois, c'est tordu comme truc, tout semble être à sa place, les infos, les codes, mais rien ne fonctionne

    Je n'ai que Access 2010, j'ai essayé de l'enregistrer en version compatible (comme sur Excel ou word), mais ça n'existe visiblement pas pour access, merci quand même.

  8. #8
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    http://claudeleloup.developpez.com/F...access2000.pdf

    Si Access2000 ne t'est pas proposé, c'est que tu utilises des fonctionnalités non encore disponibles en Access2000.
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

Discussions similaires

  1. rendre une checkbox invisible sous condition
    Par cubita dans le forum Langage
    Réponses: 27
    Dernier message: 03/05/2015, 08h54
  2. comment rendre des boutons inactifs sous un calc
    Par marsweb dans le forum ActionScript 3
    Réponses: 2
    Dernier message: 06/11/2010, 11h33
  3. Rendre un bouton invisible avec HTMl mais cliquable au même temps!
    Par élève_ingénieur dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 01/02/2010, 08h50
  4. Rendre un bouton invisible grâce à un autre bouton
    Par Meloody dans le forum Interfaces Graphiques
    Réponses: 13
    Dernier message: 22/01/2010, 17h19
  5. contrôle invisible sous conditions
    Par modus57 dans le forum IHM
    Réponses: 8
    Dernier message: 07/04/2007, 21h06

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