Article View: borland.public.jbuilder.java.swing
Article #10935JTree : Want to have MouseListner for Icon in Tree
From: Rohit Bhardwaj
Date: Tue, 27 Jul 1999 00:00
Date: Tue, 27 Jul 1999 00:00
96 lines
2966 bytes
2966 bytes
Hi,
We want to add MouseListner for the Icon added to Jlabel and not to the
Tree.
Am not able to trap the Listner event for the same. Here is my code :
private class MyCellRenderer extends JLabel implements
TreeCellRenderer
{
protected ImageIcon nodeIcon;
MouseListener mcLabelMouseListner = new
java.awt.event.MouseAdapter() {
public void mouseClicked(MouseEvent e) {
label_mouseClicked(e);
}
};
//ImageIcon nodeIcon
/**
* Constructor for MyCellRenderer
*
*/
public MyCellRenderer()
{
this.addMouseListener(mcLabelMouseListner);
}
/**
* label_mouseClicked
* To Process Label Click
* @param e - the MouseEvent Event
*/
void label_mouseClicked(MouseEvent e) {
System.out.println("label_mouseClicked ... ");
//Some processing
}
/**
* getTreeCellRendererComponent
*/
public Component getTreeCellRendererComponent(
JTree tree,
Object value,
boolean selected,
boolean expanded,
boolean leaf,
int row,
boolean hasFocus ) {
//System.out.println("Rendrer is called ");
DefaultMutableTreeNode node =
(DefaultMutableTreeNode)value;
setText((node.getUserObject()).toString());
Object lcObject = node.getUserObject() ;
// some processing
// get image icon : nodeIcon = new getImage("activity.gif");
setIcon (nodeIcon);
return this;
}
/**
* paint method for treeRenderer
*
* @param g refrence to Graphics
*/
public void paint( Graphics g ) {
try {
int textstart, textwidth;
textstart = getIcon().getIconWidth() +
getIconTextGap();
textwidth = getSize().width - textstart;
getIcon().paintIcon(this, g, 0,0);
g.setColor( getBackground() );
g.fillRect( textstart, 0, textwidth, getSize().height );
g.setColor(getForeground());
g.drawString( getText(), textstart,
(getSize().height +
g.getFontMetrics().getAscent()) / 2);
} catch (Exception ex) {
}
}
}
Regards,
Rohit Bhardwaj
781-487-4766
Technical Details
Message-ID:
<7nkt36$5hp12@forums.borland.com>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 111d45,893d1f5f3274ec06,start X-Google-Attributes: gid111d45,public From: "Rohit Bhardwaj" <rbhardwaj@kronos.com> Subject: JTree : Want to have MouseListner for Icon in Tree Date: 1999/07/27 Message-ID: <7nkt36$5hp12@forums.borland.com> X-Deja-AN: 505870167 Organization: Kronos Inc. Newsgroups: borland.public.jbuilder.java.swing X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3