JAVA - Problème avec Mouse(Motion)Listener

Fermé
Gaaston Messages postés 2 Date d'inscription dimanche 9 septembre 2007 Statut Membre Dernière intervention 10 septembre 2007 - 9 sept. 2007 à 12:50
Gaaston Messages postés 2 Date d'inscription dimanche 9 septembre 2007 Statut Membre Dernière intervention 10 septembre 2007 - 10 sept. 2007 à 22:59
Bonjour tout le monde !

Voilà, je suis en train de programmer un logiciel en JAVA permettant entre autres d'afficher des données sur un tableau (j'ai utilisé JTable), et j'aimerais que lorsque l'utilisateur pointe sa souris sur une des lignes du tableau, celle-ci s'affiche en plus grand (j'ai utilisé Window).

J'ai créé une classe qui hérite de JPanel et qui contient le tableau. Cette classe implémente les interfaces MouseListener et MouseMotionListener, et donc j'ai ajouté cette classe comme MouseListener et MouseMotionListener du tableau.

Voici le code :


public void mouseMoved(MouseEvent me)
	{
		System.out.println("dedans"); //test
		
		int x,y,rownb,rowheight; // (x,y) : position relative au tableau de la souris
				                 // rownb : le numéro de la ligne où s'est arrêtée la souris
		String text;
		x = me.getX();
		y = me.getY();
		rowheight = dataTables[0].getRowHeight(); //dataTables[0] : le tableau en question
		rownb = y/rowheight;
		
		text = (String)dataTables[0].getValueAt(rownb,0);
		for(int i=1;i<dataTables[0].getColumnCount();i++) // récupération des contenus des cellules composant la ligne
		{
			text += " | "+(String)dataTables[0].getValueAt(rownb,i);
		}
		
		details.removeAll();                       //details : la Window
		details.setSize(text.length()*8, 20);
		details.add(new JPanel().add(new JLabel(text)));
		
		details.setLocation(me.getXOnScreen(),me.getYOnScreen());   // je place la Window au niveau de la souris
		details.setVisible(true);
	}
	
	public void mouseExited(MouseEvent me)
	{
		System.out.println("dehors"); //test
		details.setVisible(false);
	}



Le problème, c'est que le contenu de Window est illisible car la classe considère que je ne cesse de rentrer/sortir du tableau. Même en restant immobile sur une des lignes du tableau, ce phénomène ce produit.

Au niveau de la console, mes tests donnent une alternance de "dedans" et "dehors".

J'espère avoir été assez clair, et merci d'avance pour vos réponses ! :)

Gaaston
A voir également:

1 réponse

Gaaston Messages postés 2 Date d'inscription dimanche 9 septembre 2007 Statut Membre Dernière intervention 10 septembre 2007
10 sept. 2007 à 22:59
C'est bon j'ai trouvé la solution, on m'a aidé sur un autre forum !
0