显示时间部分参考:http://ask.zol.com.cn/x/4522474.html
换行的思路:jtable的相关组件都支持html标签,ToolTipText也支持,想办法添加<br>换行标签即可。
关于显示时间,网上查了好多,还有些说是写死的,显示时间这是一个很中国式的要求
import javax.swing.*;
public class ToolTipPersTime {
//我理解为总共持续显示的时间
//至于弹出太慢的事,就不知道了
public static void main(String[] args) {
JFrame jf = new JFrame("ToolTip Persistent Time Test");
jf.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
JButton jb = new JButton("按钮");
jb.setToolTipText("This is the tooltip");
jf.getContentPane().add(jb);
jf.pack();
ToolTipManager.sharedInstance().setDismissDelay(5000);// 设置为5秒
jf.show();
}
}
在具体应用场景具体分析,下面是我的应用场景:
fixTable.addMouseMotionListener(new java.awt.event.MouseMotionAdapter() {
public void mouseMoved(java.awt.event.MouseEvent evt) {
int row = fixTable.rowAtPoint(evt.getPoint());
int colunm = fixTable.columnAtPoint(evt.getPoint());
String informations = fixTable.getValueAt(row, colunm).toString();
if (StringUtils.isNotBlank(informations)) {
fixTable.setToolTipText(informations);
ToolTipManager.sharedInstance().setDismissDelay(5000);// 设置为5秒
}
}
});