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

AWT/Swing Java Discussion :

JTableHeader et couleur!


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Par défaut JTableHeader et couleur!
    Bonjour,
    J'ai une JTable avec des titres de colonnes sous la forme de boutons.
    Pour cela je redefini getTableCellRendererComponent:
    public class ButtonHeaderRenderer extends JButton implements TableCellRenderer {
    /**Numero de serialisation par defaut*/
    private static final long serialVersionUID = 1L;
    int pushedColumn;
    public ButtonHeaderRenderer()
    {
    pushedColumn = -1;
    setMargin(new Insets(0,0,0,0));
    }
    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
    {
    setText((value ==null) ? "" : value.toString());
    boolean isPressed = (column == pushedColumn);
    getModel().setPressed(isPressed);
    getModel().setArmed(isPressed);
    return this;
    }
    public void setPressedColumn(int col)
    {
    pushedColumn = col;


    }

    }

    J'aimerais qu'après chaque selection il change de couleur puis, lorsqu'on réappui dessus, il retrouve sa couleur par defaut.

    Pour retrouver la couleur d'origine il faut utiliser:
    bouton.setBackground(UIManager.getColor("JButton.background"));

    Mais voila, ou je le place???

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 80
    Par défaut
    Bin merci pour la non aide!

    voila le truc que j'ai fait au cas ou ça peut aider:
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
     public class ButtonHeaderRenderer extends JButton implements TableCellRenderer {
    	  /**Numero de serialisation par defaut*/
    	private static final long serialVersionUID = 1L;
    	int pushedColumn;
    	Color [] couleur=new Color[7];
    	  public ButtonHeaderRenderer() 
    	  {     
    		  pushedColumn   = -1;   
    		  setMargin(new Insets(0,0,0,0)); 
    		  for(int i=0;i<7;i++)
    		  couleur[i]=UIManager.getColor("JButton.background");
    		  }   
    	  public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) 
    	  {    
    		  setText((value ==null) ? "" : value.toString());  
    		  boolean isPressed = (column == pushedColumn);  
    		  getModel().setPressed(isPressed);   
    		  getModel().setArmed(isPressed);
    		  if(isPressed)
    		  {
    			  if(couleur[column-1]==Color.green)
    				  couleur[column-1]=UIManager.getColor("JButton.background");
    			  else 
    				  couleur[column-1]=Color.green;
    		  }
    		  setBackground(couleur[column-1]);
    		  return this; 
    		  } 
    	  public void setPressedColumn(int col) 
    	  	{ 
    		  pushedColumn = col; 		  
    		  }
    	  }

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

Discussions similaires

  1. alterner les couleurs dans un tableau avec xsl
    Par Eithelgul dans le forum XSL/XSLT/XPATH
    Réponses: 14
    Dernier message: 03/05/2015, 23h29
  2. Couleur d'une JComboBox disabled
    Par ced dans le forum Composants
    Réponses: 6
    Dernier message: 06/01/2004, 15h33
  3. Couleur des lignes dans DBGrid
    Par eddie dans le forum C++Builder
    Réponses: 5
    Dernier message: 21/06/2002, 18h15
  4. Mixage de Couleurs
    Par exxos dans le forum Algorithmes et structures de données
    Réponses: 15
    Dernier message: 29/05/2002, 13h34
  5. String Grid et choix d'une couleur pour une ligne
    Par Gigottine dans le forum C++Builder
    Réponses: 12
    Dernier message: 17/05/2002, 15h23

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