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 :

Activer/desactiver des controls!


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Points : 52
    Points
    52
    Par défaut Activer/desactiver des controls!
    Salut,

    je veux mettre tous les controles de mon formulaire à enabled="false". Je procéde ainsi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            For i = 0 To Me.Controls.Count - 1
                Me(i).Enabled = "true"
            Next
    Ca ne fonctionne pas, j'ai une erreur sur me(i) comme quoi l'objet ne gere pas la propriete ...!

    Alors que si je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    me(1).enabled="true"
    me(2).enabled="true"
    ...
    ca fonctionne!!

    Merci de votre aide!
    ++

  2. #2
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    118
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 118
    Points : 58
    Points
    58
    Par défaut
    Es tu sur qu il y existe un controle Me(0)???

  3. #3
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    slt,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.controls(i).Enabled = "true"

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Points : 52
    Points
    52
    Par défaut
    D'abord merci pour vos réponses!

    1-chromatic=>oui il existe un control 0. Il s'agit d'une étiquette!

    2-Arkham=> j'avais essayé ce que tu me conseilles en 1er et comme ca marchait pas j'ai essayé avec me(1).


    D'autres conseils peut-etre! Sinon en dernier recours je les enumere tous mais la ca fait un code cradingue!

  5. #5
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    118
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 118
    Points : 58
    Points
    58
    Par défaut
    Je pense savoir le probleme. (c est p e une betise)

    Tu mets tous tes controles enable a false et il y a donc un probleme avec le focus car par defaut le focus est place sur le premier controle du formulaire.

    Comme tu les mets tous a false, il a une errreur genere car le focus ne peut pas etre mis sur aucun des controles

  6. #6
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    ouais me(0) ou me.controls(0) ça revient peut-être au même

    par contre tu ne testes rien sur ton contrôle

    une étiquette n'a pas de propriété enabled : désactiver une étiquette ça n'a pas de signification

    tu peux mettre un "on error resume next" pour ne pas tenir compte de l'erreur
    ou alors tu testes si le type de contrôle est égal à acLabel ou autre...

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Points : 52
    Points
    52
    Par défaut
    chromatic=>Non je pense pas que ce soit ca!!!
    arkham=>j'essaie ca!!

    EDIT : j'ai essayé de faire un test sur me(i).controltype mais cette propriété me ressort un numero et nom un type acLael ou...

    Comment peut-on recuperer cette info!!!

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 265
    Points : 181
    Points
    181
    Par défaut
    Bonjour,
    Pour balayer tous les controles tu as la collections Controls.
    Et For each est fait pour parcourir une collection


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For Each ctrl In Me.Controls
    ctrl.Enabled = False
    Next

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Points : 52
    Points
    52
    Par défaut
    Ca fonctionne pas mieux avec for each. La meme erreur est généré!

  10. #10
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Normal, tous les contrôles ne possèdent pas la propriété .Enabled et cette propriété n'est pas forcément disponible à ce moment ... il faut donc gérer les erreurs ...
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Points : 52
    Points
    52
    Par défaut
    Grace a toutes vos reponses voici ce que j'ai pu faire:

    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
    Public Function ferme()
        On Error Resume Next
        If Me.fouverture = "fermé" Then
            For i = 0 To Me.Controls.Count - 1
                Me(i).Enabled = "false"
            Next
        Else
            Me.SF_analyse.Enabled = "true"
            Me.SF_call.Enabled = "true"
            For i = 0 To Me.Controls.Count - 1
                Me(i).Enabled = "true"
            Next
        End If
     
    End Function
    et ca fonctionne tres bien!
    Merci beaucoup!

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 07/05/2008, 16h14
  2. Activer desactiver des index
    Par c.betty dans le forum SQL
    Réponses: 12
    Dernier message: 07/12/2007, 10h39
  3. [C#][JS] Comment activer/désactiver un contrôle ?
    Par K_!!! dans le forum ASP.NET
    Réponses: 15
    Dernier message: 23/05/2006, 15h18
  4. Réponses: 4
    Dernier message: 05/12/2005, 21h32
  5. [VBA Excel] Fiabilité des controles Actives X
    Par Farbin dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/08/2005, 12h28

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