Jtable + listener [Résolu]

cs_goondy 95 Messages postés jeudi 9 octobre 2003Date d'inscription 7 janvier 2005 Dernière intervention - 26 nov. 2004 à 18:41 - Dernière réponse : cs_goondy 95 Messages postés jeudi 9 octobre 2003Date d'inscription 7 janvier 2005 Dernière intervention
- 26 nov. 2004 à 18:57
Yop!

J'ai une JTable... chouette.
Non content d'avoir réussi à en faire grosso ce que je voulais de ce composant bien pète c*uilles, il y a un truc qui me gonfle : je veux claquer un listener sur le header, jusque là pas de problème... mais je n'arrive pas à savoir sur le header de quelle colonne j'ai cliqué... PLEASE, j'ai plus de cheveux!!!!!!!!!!!!!
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
cs_goondy 95 Messages postés jeudi 9 octobre 2003Date d'inscription 7 janvier 2005 Dernière intervention - 26 nov. 2004 à 18:57
3
Merci
Bon, j'ai trouvé un truc qui ressemblait sur le net... après des heures de recherches... la solution pour ceux que ça intéresse :

void listeRadiosDispoHeader_mouseClicked(MouseEvent e) throws NullPointerException
{
TableColumn col = null;
JTableHeader header = (JTableHeader) e.getSource();
JTable table = header.getTable();
TableColumnModel colModel = table.getColumnModel();
int vColIndex = colModel.getColumnIndexAtX(e.getX());

// Return if not clicked on any column header
if (vColIndex >= 0) {
col = colModel.getColumn(vColIndex);
}

// on accepte seulement les doubles clics gauche
if(((e.getModifiers() & InputEvent.BUTTON1_MASK) != 0))
{
System.out.println(vColIndex);
}
}

et vColIndex donne bien sur l'index de la colonne cliquée... ;)

Merci cs_goondy 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de cs_goondy

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.