Caro Airton, fiz uma classe de exemplo, acho que � isso que vc quer.

public class TesteTree extends JTree implements MouseListener {

/**

* Constructor for TesteTree.

*/

public TesteTree() {

super();

this.addMouseListener(this);

}

/**

* Constructor for TesteTree.

* @param newModel

*/

public TesteTree(TreeModel newModel) {

super(newModel);

this.addMouseListener(this);

}

/**

* @see java.awt.event.MouseListener#mouseClicked(MouseEvent)

*/

public void mouseClicked(MouseEvent e) {

}

/**

* @see java.awt.event.MouseListener#mousePressed(MouseEvent)

*/

public void mousePressed(MouseEvent e) {

showPopup(e);

}

/**

* @see java.awt.event.MouseListener#mouseReleased(MouseEvent)

*/

public void mouseReleased(MouseEvent e) {

showPopup(e);

}

/**

* @see java.awt.event.MouseListener#mouseEntered(MouseEvent)

*/

public void mouseEntered(MouseEvent e) {

}

/**

* @see java.awt.event.MouseListener#mouseExited(MouseEvent)

*/

public void mouseExited(MouseEvent e) {


}


private void showPopup(MouseEvent event) {


// verifica se o click foi com o bot�o esquerdo

if (event.isPopupTrigger()) {


// Retorna o path do no de acordo com os pontos x,y,

TreePath path = this.getPathForLocation(event.getX(),event.getY());


// Seta o no de acordo com o path

this.setSelectionPath(path);



// Cria um popup

JPopupMenu popupMenu = new JPopupMenu();

popupMenu.show(event.getComponent(), event.getX(), event.getY());


}

}

}

vc tb pode mapear em uma hashtable o no com o popup, assim vc tera para cada
no, popups diferentes, para retornar o no de um treepath.

path.getLastPathComponent(); retorna um object, � so vc fazer um casting
para a classe do no.






----- Original Message -----
From: "Airton" <[EMAIL PROTECTED]>
To: "java-list" <[EMAIL PROTECTED]>
Sent: Tuesday, December 10, 2002 4:09 PM
Subject: [java-list] bot�o direito do mouse em JTree


> Clicando o bot�o esquerdo, seleciono um n� no jtree e mostro alguns dados
em
> uma �rea de texto.
>
> Quero que o bot�o direito mostre um menu popup, mas � necess�rio que o n�
> seja selecionado antes, sen�o a a��o recai sobre o �ltimo n� selecionado
> (com o bot�o esquerdo).
>
> Como fa�o para o bot�o direito do mouse selecionar o n� como se eu
estivesse
> clicando o esquerdo?
>
> Obrigado.
>
>
> ------------------------------ LISTA SOUJAVA ----------------------------
> http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP
> d�vidas mais comuns: http://www.soujava.org.br/faq.htm
> regras da lista: http://www.soujava.org.br/regras.htm
> historico: http://www.mail-archive.com/java-list%40soujava.org.br
> para sair da lista: envie email para [EMAIL PROTECTED]
> -------------------------------------------------------------------------


------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP 
d�vidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a