Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1722 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  JTable , probleme affichage

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

JTable , probleme affichage

n°2005852
ulquiorra5
Posté le 29-06-2010 à 17:54:33  profilanswer
 

Bonjour,  
 
J  ' ai un petit probleme concernant la Jtable
voila , je remplis la mienne avec une liste de nom de fichier et j applique un renderer personnalise sur la 1 ere colonne de ma JTable qui contiendra une ImageIcon
Je desire faire en sorte que cette image s ' affiche lorsque je clique sur ladite ligne, donc j ' ai fais un truc comme ca
 

Code :
  1. if(isSelected)
  2. {
  3. this.setIcon(icon);
  4. //this.fi
  5. }
  6. else
  7. {
  8. this.setBackground(Color.BLACK);
  9. }


 
ca fonctionne plutot bien , si je selectionne les index des lignes les uns apres les autres(ex : index 0, index 1)
mais si je selectionne par exemple la ligne 1 , puis la ligne 7, toutes les lignes entre elles affichent aussi l ' image alors que je n ' ai pas cliqué dessus.
Comment resoudre ce probleme svp ?
   
  Merci de votre aide
   
  Mon renderer complet:

Code :
  1. package com.dev;
  2. import java.awt.Color;
  3. import java.awt.Component;
  4. import javax.swing.ImageIcon;
  5. import javax.swing.JTable;
  6. import javax.swing.table.DefaultTableCellRenderer;
  7. public class ComposantsTableau extends DefaultTableCellRenderer {
  8.  private static final long serialVersionUID = 1L;
  9.  String path="Lu.jpg";
  10.    ImageIcon icon = new javax.swing.ImageIcon(getClass().getResource(path));
  11.    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected,
  12.        boolean hasFocus, int row, int column) {
  13.    // this.setText("case " + row + ", " + column);
  14.      //this.setText((String) value);
  15.    // this.setHorizontalAlignment(SwingConstants.LEFT);
  16.   if(isSelected)
  17.   {
  18.      this.setIcon(icon);
  19.      //this.fi
  20.   }
  21.   else
  22.   {
  23.    this.setBackground(Color.BLACK);
  24.   }
  25.     
  26.      return this;
  27.    }
  28.  }


mood
Publicité
Posté le 29-06-2010 à 17:54:33  profilanswer
 

n°2006234
ulquiorra5
Posté le 01-07-2010 à 10:17:38  profilanswer
 

up svp ^^

n°2006619
Deamon
Posté le 02-07-2010 à 13:20:51  profilanswer
 

Et ton renderer il est lié et appelé comment depuis ta Jtable ?

n°2006627
ulquiorra5
Posté le 02-07-2010 à 13:41:08  profilanswer
 

comme ceci tout simplement
 

Code :
  1. listeMessage.getColumnModel().getColumn(0).setCellRenderer(new ComposantsTableauPanelAppel());


 
merci de ta reponse , car je seche depuis 2j dessus uhuh


Message édité par ulquiorra5 le 02-07-2010 à 13:41:24
n°2006630
Deamon
Posté le 02-07-2010 à 13:53:13  profilanswer
 

Je connais pas trop les Renderer donc je sais pas si je vais pouvoir t'aider mais si tu fais un test sur isSelected && hasFocus ça marche pas mieux ?

n°2006657
ulquiorra5
Posté le 02-07-2010 à 14:42:50  profilanswer
 

nop car hasFocus signifie que je dois cliquer sur la cellule même et pas toute la ligne.
 
C' est bizarre ce problème d ' index car ca le fait pas sur une JList.
Je pense que c du cote du renderer qu il faut configurer quelque chose
 
Merci de ton aide


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  JTable , probleme affichage

 

Sujets relatifs
Problème script avec joomlaMauvais affichage menu SPRY sous IE
Problème CSS : Espace non désiré d'origine inconnue sous les images[Resolu] Probleme image en bordure de bloc !
affichage datagrid en strutsproblème au niveau de struts-config.xml
[CSS] problème de mise en pageproblème affichage données mysql/php
Problème avec affichage d'une Jtable 
Plus de sujets relatifs à : JTable , probleme affichage


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR