关于JGraph里设置工具提示问题
这里应该有用过Jgraph的筒子吧,求帮忙啊!我的问题是当我光标移动的Jgraph里的一个Cell上时,我想让它显示一个JToolTiptext
但不显示,而当我的光标离开那个Cell时,设置的JToolTiptext却出现了!弄了几天了,
都不知道是什么问题,求大大们帮忙啊,谢谢了!
一下就是那个测试代码:
--------------------编程问答-------------------- 自己顶一下!用过JGraph的人好像不是很多饿,还有需要Jgraph包的筒子可以加我Qq:592293049 --------------------编程问答-------------------- 怎么还是没人帮我啊?大大们,你们在哪里啊 --------------------编程问答-------------------- --------------------编程问答-------------------- 还是没有人啊,求给力啊...
import java.awt.Color;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;
import java.awt.geom.Rectangle2D;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.ToolTipManager;
import org.jgraph.JGraph;
import org.jgraph.graph.DefaultCellViewFactory;
import org.jgraph.graph.DefaultGraphCell;
import org.jgraph.graph.DefaultGraphModel;
import org.jgraph.graph.GraphConstants;
import org.jgraph.graph.GraphLayoutCache;
import org.jgraph.graph.GraphModel;
public class Hello {
public static void main(String args[]){
GraphModel model = new DefaultGraphModel();
//视图
GraphLayoutCache view = new GraphLayoutCache(model,new DefaultCellViewFactory());
//通过模型与视图创建图形
final JGraph graph = new JGraph(model,view);
//图形上的单元[单元包括:顶点,边,结点]
DefaultGraphCell dgc=new DefaultGraphCell("Hello");
GraphConstants.setBounds(dgc.getAttributes(),new Rectangle2D.Double(20,20,40,20));
//设置梯度颜色[即由白色到设置颜色的一个过度]
GraphConstants.setGradientColor(dgc.getAttributes(), Color.orange);
GraphConstants.setOpaque(dgc.getAttributes(),true);
graph.getGraphLayoutCache().insert(dgc);
// graph.set
// mxGraphComponent.setToolTips(true)
ToolTipManager.sharedInstance().registerComponent(graph);
ToolTipManager.sharedInstance().setInitialDelay(0);
JFrame frame = new JFrame("Tool Tip Demo");
frame.setSize(200, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JScrollPane js=new JScrollPane(graph);
frame.getContentPane().add(js);
frame.pack();
frame.setVisible(true);
graph.addMouseMotionListener(new MouseMotionAdapter(){
public void mouseMoved(MouseEvent e){
Object o=graph.getFirstCellForLocation(e.getX(), e.getY());
if(o==null)//如果不在光标不在Cell上就不显示提示
return;
else
{
if(o instanceof DefaultGraphCell)
graph.setToolTipText(o.toString());
}
}});
}
}
补充:Java , Java SE