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

Composants Java Discussion :

[JTable] Header : le rendre plus "stable"


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de Lady
    Femme Profil pro
    Développeur Java
    Inscrit en
    Mars 2003
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2003
    Messages : 678
    Par défaut [JTable] Header : le rendre plus "stable"
    Bonjour là j'ai un problème 100% graphique.
    J'ai une jolie JTable, avec un header qui a un cellRenderer puisque ce sont en fait des labels. Le problème c'est que le header de base a des comportements vraiment hiératiques (euh pas sure de l'écriture là !) :

    Le header n'est pas toujours aligner avec les colonne de la JTable elle même , sous window je n'ai carrément pas les trait de séparation entre 2 cellules du header ect ...

    y a t'il un moyen de le stabilisé ?

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Par défaut
    Bonjour,

    Concernant les traits de séparation, regarde du côté des Borders.
    Pour ce qui est de l'alignement, c'est un peu bizarre. Fais-tu des setSize dans le code du Renderer ?
    "Le bon ni le mauvais ne me feraient de peine si si si je savais que j'en aurais l'étrenne." B.V.
    Non au langage SMS ! Je ne répondrai pas aux questions techniques par MP.
    Eclipse : News, FAQ, Cours, Livres, Blogs.Et moi.

  3. #3
    Membre éprouvé Avatar de Lady
    Femme Profil pro
    Développeur Java
    Inscrit en
    Mars 2003
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2003
    Messages : 678
    Par défaut
    Citation Envoyé par xavlours
    Bonjour,

    Concernant les traits de séparation, regarde du côté des Borders.
    Pour ce qui est de l'alignement, c'est un peu bizarre. Fais-tu des setSize dans le code du Renderer ?
    non .. mas le renderer je viens juste de le mettre , pourtant j'avais déjà ce problème avant (d'ailleurs je ne crois pas l'avoir sur windows , là je suis sous fedora)

  4. #4
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Euh, sans le code de ton Renderer et sans captures du résultat on ne peut pas faire grand chose pour toi...

  5. #5
    Membre éprouvé Avatar de Lady
    Femme Profil pro
    Développeur Java
    Inscrit en
    Mars 2003
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2003
    Messages : 678
    Par défaut
    pour l'image : ici --> http://i52.photobucket.com/albums/g2...stal/table.jpg

    la c'est la version fedora ou les colonne ne sont pas alignées

    pour le code euh du rendrer c pas grand chose :

    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
    35
    36
    37
    38
     
    import java.awt.Color;
    import java.awt.Component;
     
    import javax.swing.JLabel;
    import javax.swing.JTable;
    import javax.swing.table.TableCellRenderer;
     
     
    public class ResultTableHeaderRenderer extends JLabel implements TableCellRenderer{
     
    	boolean  _selected = false;
    	String _columnName;
     
     
    	ResultTableHeaderRenderer(String columnName)
    	{
    		super();
    	System.out.println("recreate !");
    		_columnName = columnName;
    	}
     
    	public void setSelected(boolean select)
    	{
    		System.out.println("set ?"+ select);
    		_selected = select;
    	}
     
    	public JLabel getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
     
    		if (_selected)
    			this.setText("<html><font color=red>"+_columnName+"<font></html>");
    		else
    			this.setText(_columnName);
    		return this;
    	}
     
    }

  6. #6
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Es tu bien sûre d'avoir correctement affecté ton HeaderRender, car normalement il ne devrait pas montrer de traits de séparation au vu de ton code...
    Or c'est le cas dans ta capture d'écran...

  7. #7
    Membre éprouvé Avatar de Lady
    Femme Profil pro
    Développeur Java
    Inscrit en
    Mars 2003
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2003
    Messages : 678
    Par défaut
    Citation Envoyé par sinok
    Es tu bien sûre d'avoir correctement affecté ton HeaderRender, car normalement il ne devrait pas montrer de traits de séparation au vu de ton code...
    Or c'est le cas dans ta capture d'écran...

    hum j'en met un a chaque header .. et cela correpondrais à ce que j'ai sous window (pas de séparateur)

    par contre c'est bien affecté etant donner que le passage en rouge marche bien ...

  8. #8
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Bon je regarderais ce soir mais vu que ma bécanne Linux est down en ce moment, je ne suis pas sûr de trouver le problème (et au taf il sont en Windows only)

Discussions similaires

  1. [JTable] Header ne s'affichent plus
    Par pascalouh dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 22/07/2008, 15h37
  2. [JTable][Header]Cherche à rendre 'dynamique' les header
    Par Hashitori dans le forum Composants
    Réponses: 1
    Dernier message: 07/04/2006, 17h13

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