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 :

Pb:Rowsorter avec Jtable personnalisé


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 48
    Par défaut Pb:Rowsorter avec Jtable personnalisé
    Bonjour,

    J'arrive bien à filtrer mon Jtable personnalisé avec un TableRowSorter mais le problème est que les cell editor et renderer ne sont pas décalées comme le sont mes données du modèle.

    Par exemple j'ai une combobox sur la ligne2 colonne 2 et un string ligne 1 et 3 colonne 2.
    Si je masque ma ligne 2 mon combobox reste affiché sur la ligne 2 de mon Jtable.
    La valeur de mon string est bien passé de la ligne 3 à 2 mais elle est masqué par mon cell renderer qui lui est une combobox

    Mon problème est donc que la fonction getCellEditor est appelé avec la ligne 2 alors qu'elles devraient l'être avec la ligne 3. Le modèle est bien filtré mais pas la vue
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    		@Override
    	public TableCellEditor getCellEditor(int row, int col) {
    		TableCellEditor editor = null;
    		if (this.m_oRowEditor != null) {
    			editor = this.m_oRowEditor.getEditor(row, col); 
    			return editor;
    		} else {
    			return super.getCellEditor(row, col);
    		}
    	}
    Si vous avez une idée?

    Merci par avance

  2. #2
    Membre averti
    Femme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 48
    Par défaut
    J'ai trouvé la solution il suffit d'utiliser la fonction convertRowIndexToModel (Maps the index of the row in terms of the view to the underlying TableModel. If the contents of the model are not sorted the model and view indices are the same.)qui convertit les index entre vue et modèle

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    	@Override
    	public TableCellEditor getCellEditor(int row, int col) {
    		TableCellEditor editor = null;
    		if (this.m_oRowEditor != null) {
    			//modif
    			editor = this.m_oRowEditor.getEditor(convertRowIndexToModel(row), col); 
    			return editor;
    		} else {
    			return super.getCellEditor(row, col);
    		}
    	}

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

Discussions similaires

  1. Jtable avec model personnalisé
    Par Raphael1980 dans le forum Composants
    Réponses: 2
    Dernier message: 03/03/2009, 21h02
  2. Probleme avec JTable
    Par Janitrix dans le forum Composants
    Réponses: 4
    Dernier message: 04/04/2006, 18h10
  3. Problème avec Jtable
    Par @yoyo dans le forum Composants
    Réponses: 4
    Dernier message: 22/03/2006, 15h51
  4. problème avec Jtable
    Par magic001 dans le forum Composants
    Réponses: 6
    Dernier message: 15/03/2006, 23h49
  5. JTable ==> Personnalisé une cellule
    Par mehdi82 dans le forum Composants
    Réponses: 7
    Dernier message: 15/11/2005, 15h36

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