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 :

Traitement automatique de controles


Sujet :

IHM

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2008
    Messages : 5
    Par défaut Traitement automatique de controles
    Bonjour,

    J'ai un grand nombre de controle (label) dans un formulaire dont j'aimerais modifier automatiquement la couleur de fond.

    J'ai fait une boucle, pas d'erreur, mais rien ne se passe. J'ai beau chercher, je ne comprends pas ...

    Voici mon code (dans une fonction)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim Mon_Ctl As control
    For Each Mon_Ctl In Me.Form
        If TypeOf ctl Is Label Then
            With Mon_Ctl
                .Enabled = False
                .BackColor = -2147483633
            End With
        End If
    Next
    Je suis vraiment curieux de comprendre ce qui ne marche pas.

    Merci d'avance à ceux qui pourront m'aider.

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 598
    Billets dans le blog
    67
    Par défaut
    Salut,

    ton code est sur quel évènement ?
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Plusieurs choses font que ton code ne fonctionnera pas

    1
    Dans cette partie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If TypeOf ctl Is Label Then
    se serait plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If TypeOf Mon_Ctl Is Label Then
    2
    La propriété Enabled n'existe pas dans une étiquette (label).

    3
    De plus pour que l'étiquette est une couleur de fond, il faut que ton style soit opaque (propriété BackStyle)

    Tu devrais avoir un code de ce style.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim Mon_Ctl As Control
    For Each Mon_Ctl In Me.Form
        If TypeOf Mon_Ctl Is Label Then
            With Mon_Ctl
                .BackStyle = 1
                .BackColor = RGB(200, 200, 255)
            End With
        End If
    Next
    De plus, tu dis qu'il ne bug pas, cela signifie qu'il ne s'exécute pas, car sinon tu aurait une erreur.
    Comme le dit User où est ton code ?

    Essaye sur l'évènement Load de ton formulaire.

    Starec

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2008
    Messages : 5
    Par défaut
    Merci, j'avais effectivement détecté ces erreurs par la suite ; je crois que j'avais juste besoin de dormir un peu pour y voir plus clair !!!

    Voilà le code qui marche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    For Each Mon_Ctl In Me.Form '!Parcours
        If Mon_Ctl.ControlType = acTextBox Then
            If Left(Mon_Ctl.Name, 5) = "CpRT1" Then
                Mon_Ctl.Enabled = False
                Mon_Ctl.BackColor = -2147483633
            End If
        End If
    Next

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

Discussions similaires

  1. [VB6]Ajout automatique de contrôles
    Par Asdorve dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 22/05/2006, 16h03
  2. [VB]inserer automatiquement des controls dans un listbox
    Par oumarsaw dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 05/04/2006, 18h22
  3. [VB]Remplir automatiquement des controles
    Par Ooly2001 dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 18/01/2006, 23h04
  4. Traitement automatique des mails.
    Par ourk dans le forum Linux
    Réponses: 2
    Dernier message: 23/09/2004, 18h14
  5. Réponses: 1
    Dernier message: 02/06/2004, 13h59

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