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

  1. #1
    Membre à l'essai
    Femme Profil pro
    étudiante
    Inscrit en
    janvier 2016
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : étudiante

    Informations forums :
    Inscription : janvier 2016
    Messages : 54
    Points : 21
    Points
    21
    Par défaut Comment colorer certaines lignes de jtable model selon une condition ?
    Bonjour,
    je voudrais changer la couleur des lignes de mon Jtable selon une condition de comparaison entre deux champs (quantite & stock min) .
    sans l'utilisation de la fonction getTableCellRendererComponent !! est ce que c'est possible ??!!
    Merci d'avance
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     int q1 = 0;   int q2=0;
     
                          q1 = rss.getInt("quantite_T"); 
                          q2 = rss.getInt("stock_min"); 
     
                        if(q1<=q2)  
                        {   System.out.println("la valeur est inf");}     
                        else{System.out.println("la valeur est sup");   }

  2. #2
    Membre confirmé
    Avatar de Rony Rauzduel
    Homme Profil pro
    En formation Architecte logiciel
    Inscrit en
    décembre 2008
    Messages
    566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : En formation Architecte logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2008
    Messages : 566
    Points : 539
    Points
    539
    Par défaut
    Bonjour,

    Je te donne uniquement un indice, sans t'apporter la solution immédiatement. Tu dois utiliser l'opérateur % sur tes 2 attributs quantite & stock min pour conditionner la couleur des lignes de ton Jtable.

  3. #3
    Membre à l'essai
    Femme Profil pro
    étudiante
    Inscrit en
    janvier 2016
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : étudiante

    Informations forums :
    Inscription : janvier 2016
    Messages : 54
    Points : 21
    Points
    21
    Par défaut
    Salut,
    Sans utiliser la fonction getTableCellRendererComponent ??????
    Pourriez vous m'expliquer !! je n'ai pas bien compris ou dois je mettre l'opérateur % et comment ????

  4. #4
    Membre confirmé
    Avatar de Rony Rauzduel
    Homme Profil pro
    En formation Architecte logiciel
    Inscrit en
    décembre 2008
    Messages
    566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : En formation Architecte logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2008
    Messages : 566
    Points : 539
    Points
    539
    Par défaut
    Sans l'utilisation de getTableCellRendererComponent cela risque d'être plus compliqué. Tu devras obligatoirement implémenter une méthode qui permet de faire ce que tu veux; c'est pour cela que je t'ai parlé de l'opérateur %.

  5. #5
    Membre à l'essai
    Femme Profil pro
    étudiante
    Inscrit en
    janvier 2016
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : étudiante

    Informations forums :
    Inscription : janvier 2016
    Messages : 54
    Points : 21
    Points
    21
    Par défaut
    J'ai essayée d'implémenter une méthode mais j'ai une erreur au niveau des déclarations je crois !!
    voici la méthode
    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
    16
    17
    18
    19
    public class MyTableRenderer extends DefaultTableCellRenderer{
     
            public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
                Component c = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
     
               int selectedRow = table.convertRowIndexToModel(row);
               if (table.getModel().getValueAt(selectedRow, 8) != null && table.getModel().getValueAt(selectedRow, 1) != null) {
                   int quantite = Integer.parseInt(table.getModel().getValueAt(selectedRow, 8).toString()); // se trouve ici l'erreur !!!!!
                   int minQuantite = Integer.parseInt(table.getModel().getValueAt(selectedRow, 1).toString());
                   if (quantite < minQuantite) {
                       if (isSelected) {
                           c.setBackground(new Color(255, 138, 239));
                       } else {
                           c.setBackground(new Color(252, 189, 252));
                       }
                   }
               }
               return c;
           }

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     int q1 = 0;   int q2=0;
     
                          q1 = rss.getInt("quantite_T"); 
                          q2 = rss.getInt("stock_min"); 
     
                        if(q1<=q2)  
                        {   System.out.println("la valeur est inf");
                            jTable.setDefaultRenderer(Object.class, new MyTableRenderer());  }     
                        else{System.out.println("la valeur est sup");   }

  6. #6
    Membre confirmé
    Avatar de Rony Rauzduel
    Homme Profil pro
    En formation Architecte logiciel
    Inscrit en
    décembre 2008
    Messages
    566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : En formation Architecte logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2008
    Messages : 566
    Points : 539
    Points
    539
    Par défaut
    J'ai essayée d'implémenter une méthode mais j'ai une erreur au niveau des déclarations je crois !!
    Votre constatation ne me donne pas beaucoup d'information sur la nature de votre message d'erreur. Si vous voulez que je puisse vous aider, il va falloir être plus explicite.

    Cela fait un petit moment que je n'ai pas programmé en Swing mais je pourrais vous aider si vous m'envoyez l'intégralité de votre code.

Discussions similaires

  1. Copier des lignes d'un tableau selon une condition
    Par lou89 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/05/2020, 14h38
  2. Réponses: 2
    Dernier message: 11/06/2018, 16h41
  3. [PHP 5.0] colorer les lignes d'un tableau suivant une condition
    Par Natoucka dans le forum Langage
    Réponses: 10
    Dernier message: 14/04/2016, 21h10
  4. [AC-2003] Sortir des lignes de la base selon une condition
    Par liop49 dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 22/03/2010, 10h12
  5. Comment colorer les lignes d'un DBGrid ?
    Par k_boy dans le forum Composants VCL
    Réponses: 4
    Dernier message: 17/11/2007, 21h54

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