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

Langage Java Discussion :

[debutant]Gérer plusieurs Stringarrays


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Août 2003
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 46
    Par défaut [debutant]Gérer plusieurs Stringarrays
    Bonjour
    Une question de débutant, mais débutant qui a regardé la FAQ and co avant de poster....
    Je fais évoluer une application java, j'ai les mains liées sur un certain nombre de points.
    Cet application sert à générer des motifs géométriques.
    Un motif a pour caractéristique : une forme, une surface, un jeu de couleur spécifique par forme.
    J'ai rajouté un type de motif, et donc rajouté un jeu de couleurs. Le nom des couleurs étant stocké sous forme de tableau de String, j'ai créé un tableau pour chaque forme. (on va les appeler couleur_carre; couleur_rond)
    Jusque là, comme il n'y avait qu'une couleur, le code était simple. Par exemple pour afficher la couleur du motif dans une fenetre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pC.add(new ALabel(Couleur[motif.couleur]));
    Vu que maintenant il y a deux listes de couleur en fonction du motif, dois-je reprendre tout le code pour pouvoir indiquer la bonne liste en fonction de la couleur du motif de cette manière ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (motif.couleur<5) pC.add(new ALabel(Couleur_carre[motif.couleur]));
    else pC.add(new ALabel(Couleur_rond[motif.couleur]));
    ou existe-t-il une manière nettement plus élégante de faire qui me permettrait de ne m'occuper de la valeur de motif.couleur seulement au moment où je consulte mon tableau ?

  2. #2
    Membre émérite
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    398
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2004
    Messages : 398
    Par défaut
    Citation Envoyé par titpuce
    Bonjour
    Une question de débutant, mais débutant qui a regardé la FAQ and co avant de poster....
    Je fais évoluer une application java, j'ai les mains liées sur un certain nombre de points.
    Cet application sert à générer des motifs géométriques.
    Un motif a pour caractéristique : une forme, une surface, un jeu de couleur spécifique par forme.
    J'ai rajouté un type de motif, et donc rajouté un jeu de couleurs. Le nom des couleurs étant stocké sous forme de tableau de String, j'ai créé un tableau pour chaque forme. (on va les appeler couleur_carre; couleur_rond)
    Jusque là, comme il n'y avait qu'une couleur, le code était simple. Par exemple pour afficher la couleur du motif dans une fenetre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pC.add(new ALabel(Couleur[motif.couleur]));
    Vu que maintenant il y a deux listes de couleur en fonction du motif, dois-je reprendre tout le code pour pouvoir indiquer la bonne liste en fonction de la couleur du motif de cette manière ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (motif.couleur<5) pC.add(new ALabel(Couleur_carre[motif.couleur]));
    else pC.add(new ALabel(Couleur_rond[motif.couleur]));
    ou existe-t-il une manière nettement plus élégante de faire qui me permettrait de ne m'occuper de la valeur de motif.couleur seulement au moment où je consulte mon tableau ?
    un motif n'est pas modélisé par une classe ??

  3. #3
    Membre averti
    Inscrit en
    Août 2003
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 46
    Par défaut
    Bonjour Franck,
    les couleurs ne sont pas définies dans la classe motif, mais dans une interface. Sinon il me suffirait de faire une méthode et le pb serait réglé.
    Dans mon appli un motif utilise un groupe de couleur, un composant aussi.
    La classe motif sert à définir un motif qui est affiché.
    La classe composant sert à définir un composant qui est défini dans un fichier plat.
    Un composant contient des motifs et autres structures.

  4. #4
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut
    Peut être peux-tu reprendre le constructeur de ALabel de la façon suivante approximativement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    ALabel(Couleur couleur)
    {
     this.couleur = couleur;
     if (couleur.getMotifCouleur() < 5)
       this.couleur = Couleur_carre[motif.couleur];
     else
       this.couleur = Couleur_rond[motif.couleur];
    ...
    }
    ??

  5. #5
    Membre averti
    Inscrit en
    Août 2003
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 46
    Par défaut
    merci gifftane.
    Mais ta solution est simplement une réécriture de ce que j'ai mis plus haut non ?
    En fait ma liste de couleurs n'est pas appelée que pour les menus. Si j'affiche un motif, la liste de couleur suit, donc si je comprends bien ta méthode, pour chaque type d'objet, je me retrouve à redéfinir le choix des couleurs ?

  6. #6
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut
    J'ai quelque mal à saisir l'ensemble du contexte. Je ne sais pas d'où sortent ces menus dont tu me viens de me parler. J'avais l'impression de ALabel, donc, peut être, de labels ??

    La solution que je suggère intervient dans le constructeur de cet ALabel, de façon à définir la couleur, selon, effectivement, ton écriture (c'était me semble-t-il son intérêt). Simplement, comme c'est dans le constructeur, tu n'as plus besoin de l'écrire partout où tu fais appel à la création de cet objet, comme c'était le cas, avais-je l'impression, avant. Mais je dois admettre que ce ne sont que pures suppositions.

Discussions similaires

  1. [debutant]gérer plusieurs variables dans un for ?
    Par Merfolk dans le forum Débuter
    Réponses: 5
    Dernier message: 09/03/2006, 21h01
  2. Réponses: 4
    Dernier message: 08/09/2004, 10h28
  3. [debutant] Gérer escape sur un JDialog
    Par debutant java dans le forum Agents de placement/Fenêtres
    Réponses: 5
    Dernier message: 01/09/2004, 17h45
  4. Comment gérer plusieurs langues ?
    Par InterSQL dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 27/02/2004, 16h12
  5. Comment gérer plusieurs icones dans son exécutable ?
    Par declencher dans le forum Langage
    Réponses: 5
    Dernier message: 15/10/2003, 10h49

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