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

Contribuez Discussion :

Simuler une listbox avec des couleurs [Sources]


Sujet :

Contribuez

  1. #1
    Invité
    Invité(e)
    Par défaut Simuler une listbox avec des couleurs
    Bonjour à Tous,

    Je viens vous faire profiter d’un petit bout de code que je viens de créer pour une appli en cours.

    Objectif :
    Dans un service qualité, ils font des saisies par défaut, hors ces défauts ont chacun une couleur (cette couleur est reprise dans des graphiques). Stocker la valeur d’une couleur (de type long) dans une table n’est pas compliqué.
    Il fallait donc créer un formulaire pour créer, modifier ou supprimer des défauts, et sélectionner la couleur.

    Problème :

    Les listes fournies avec Access ne permettent pas de gérer des couleurs, interdiction d’utiliser le MsFlexGrid.
    On peut dire je vais passer par un formulaire avec la mise en forme conditionnelle, hors celle-ci ne permet que trois conditions, donc ce n’est pas possible.


    Solution :

    La solution que vous trouverez dans l’exemple ci-joint reprend le principe suivant :

    1 – J’ai une table avec mes défauts (tbl_Defaut)
    2 – A partir de cette table je remplis un formulaire en mode «*Formulaire Unique*», je mets mes enregistrements les uns en dessous des autres. Le remplissage se fait par programmation, en fait on crée des contrôles en fonction de ce qu’il y’a dans la table (le code se trouve dans le module «*mod_ListBox*».
    3 – Ce formulaire est mis comme sous-formulaire d’un autre, de tel manière qu’il apparaît comme une listebox.

    Exemple*:

    Vous trouverez dans le fichier ci-joint un exemple. Au lancement du fichier (format Access 2000), vous aurez un formulaire, vous pourrez tester. (les noms sont bien sûr bidon).
    Bien sûr vous pouvez étendre et avoir la ligne entière de couleurs.

    Inconvénient de cette méthode.

    Le nombre d’éléments dans la liste est limité, en effet étant donné le principe de conception nous sommes limités à la taille d’un formulaire.
    Un formulaire a une hauteur maximum de 55 cm, mes lignes ont une hauteur de 0.45 cm, ce qui fait que vous ne pourrez mettre que 122 lignes, il faudra dont le réservé à de petites listes.

    Si vous avez des questions, n’hésitez pas, mais sur le FORUM, pas par MP (je ne réponds pas aux questions techniques).

    Starec
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés
    Dernière modification par Invité ; 30/08/2007 à 13h16.

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

    A la suite d'un bug découvert par Stéphane Olivier BERNARD et résolu par Arkham, j'ai placé une nouvelle version dans le post précédent, celle-ci prend en compte les couleurs personnalisées.

    Merci à eux deux.

    Starec

  3. #3
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Y a une palette de couleur pour choisir la couleur ? CF les codes sources

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Tofalu Voir le message
    Y a une palette de couleur pour choisir la couleur ? CF les codes sources
    Oui, c'est une le code des sources Access, le but n'est pas le choix de la couleur, mais de voir que visuellement on peut simuler une listbox avec des couleurs.

    Starec

  5. #5
    Membre expérimenté
    Homme Profil pro
    Indépendant développeur et formateur
    Inscrit en
    Octobre 2007
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant développeur et formateur
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 036
    Points : 1 598
    Points
    1 598
    Par défaut
    hello
    Merci monsieur Starec pour cet exemple qui répond bien à ma préoccupation,
    par contre, la modif de la pièce jointe a peut être foiré, j'ai pas trouvé la gestion des couleurs personnalisées?????
    -------------------Simplifi----------comme si tout était simple--------

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

    Je viens de re téléchager ce qu'il y a en pièce jointe, et tout fonctionne sans problème.

    Quel est le tien ?

    Starec

  7. #7
    Membre expérimenté
    Homme Profil pro
    Indépendant développeur et formateur
    Inscrit en
    Octobre 2007
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant développeur et formateur
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 036
    Points : 1 598
    Points
    1 598
    Par défaut
    hello
    Pas trop de problème, je viens de mettre le petit bouton pour créer les couleurs dans le formulaire destiné à remplir la table de paramètre pour que mon client puisse paramétrer de façon conviviale (comme quoi j'ai un peu de retard...)
    simplement, je voyais les couleur personnalisées entièrement noires et je croyais à un disfonctionnement
    quand je défini une couleur personnalisée, elle ne revient pas à l'utilisation suivante!!!!!
    avec le module des codes sources, les couleurs personnalisées ne sont pas toutes noires mais elles cahngent d'une ouverture à l'autre dans une espèce de farandole un peu inexpliquable

    mais rien de grave, je considère mon problème comme réglé
    -------------------Simplifi----------comme si tout était simple--------

  8. #8
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonsoir membres du forum,
    J'ai téléchargé la pièce jointe de l'application "ListBoxColor" de Starec.
    1°) J'ai supprimé toutes données de couleurs préenregistrées qui y étaient.
    2°) En essayant d'enregistrer de nouvelles données de couleur, voici le message d'erreur:

    Nom : CaptureCouleur_5.PNG
Affichages : 570
Taille : 28,8 Ko
    Nom : CaptureCouleur_6.PNG
Affichages : 549
Taille : 38,3 Ko

    Pourquoi cette erreur ?

    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  9. #9
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 621
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 621
    Points : 14 577
    Points
    14 577
    Par défaut
    bonsoir,
    à l'époque, le concepteur n'avait pas prévu que la table soit vide. Il faut rajouter un Nz():
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            rstAjout("Id_Defaut") = Nz(DMax("Id_Defaut", "tbl_Defaut"), 0) + 1
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  10. #10
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    bonsoir,
    à l'époque, le concepteur n'avait pas prévu que la table soit vide. Il faut rajouter un Nz():
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            rstAjout("Id_Defaut") = Nz(DMax("Id_Defaut", "tbl_Defaut"), 0) + 1
    Bonsoir tee_grandbois,
    Merci infiniment. La ligne de code marche.

    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

Discussions similaires

  1. Réponses: 1
    Dernier message: 27/01/2010, 18h04
  2. "sectionner" une courbe avec des couleurs
    Par Angel30 dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 26/05/2009, 17h43
  3. Blend : Personnaliser une listbox avec des donneés bindées
    Par zax-tfh dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 29/03/2009, 10h17
  4. Simuler une POO avec des structures?
    Par MPEG4 dans le forum C
    Réponses: 10
    Dernier message: 21/07/2008, 14h35
  5. Où trouver une listbox avec des checkbox dedans ?
    Par zarbiman dans le forum ASP.NET
    Réponses: 5
    Dernier message: 17/09/2007, 09h59

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