下面列出了javax.swing.JComponent#getToolTipLocation ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
/**
*
* @param event
*/
private void initiateToolTip(MouseEvent event) {
JComponent component = (JComponent) event.getSource();
String newToolTipText = component.getToolTipText(event);
newToolTipComponent = ((ComponentToolTipProvider) component).getCustomToolTipComponent(event);
if (newToolTipComponent == null)
return;
component.removeMouseMotionListener(moveBeforeEnterListener);
Point location = event.getPoint();
// ensure tooltip shows only in proper place
if (location.x < 0 || location.x >= component.getWidth() || location.y < 0
|| location.y >= component.getHeight()) {
return;
}
component.removeMouseMotionListener(this);
component.addMouseMotionListener(this);
mouseEvent = event;
toolTipText = newToolTipText;
preferredLocation = component.getToolTipLocation(event);
insideComponent = component;
showTipWindow();
}
/**
* Checks to see if the tooltip needs to be changed in response to the MouseMoved event
* <code>event</code>.
*/
private void checkForTipChange(MouseEvent event) {
JComponent component = (JComponent) event.getSource();
String newText = component.getToolTipText(event);
Point newPreferredLocation = component.getToolTipLocation(event);
if (newText == null) {
reset();
hideTipWindow();
return;
}
if (newPreferredLocation == null)
return;
if ((newText.equals(toolTipText))) {
return;
}
newToolTipComponent = ((ComponentToolTipProvider) component).getCustomToolTipComponent(event);
if (newToolTipComponent == null)
return;
toolTipText = newText;
mouseEvent = event;
preferredLocation = newPreferredLocation;
hideTipWindow();
showTipWindow();
}
/**
*
* @param event
*/
private void initiateToolTip(MouseEvent event) {
JComponent component = (JComponent) event.getSource();
String newToolTipText = component.getToolTipText(event);
newToolTipComponent = ((ComponentToolTipProvider) component).getCustomToolTipComponent(event);
if (newToolTipComponent == null)
return;
component.removeMouseMotionListener(moveBeforeEnterListener);
Point location = event.getPoint();
// ensure tooltip shows only in proper place
if (location.x < 0 || location.x >= component.getWidth() || location.y < 0
|| location.y >= component.getHeight()) {
return;
}
component.removeMouseMotionListener(this);
component.addMouseMotionListener(this);
mouseEvent = event;
toolTipText = newToolTipText;
preferredLocation = component.getToolTipLocation(event);
insideComponent = component;
showTipWindow();
}
/**
* Checks to see if the tooltip needs to be changed in response to the MouseMoved event
* <code>event</code>.
*/
private void checkForTipChange(MouseEvent event) {
JComponent component = (JComponent) event.getSource();
String newText = component.getToolTipText(event);
Point newPreferredLocation = component.getToolTipLocation(event);
if (newText == null) {
reset();
hideTipWindow();
return;
}
if (newPreferredLocation == null)
return;
if ((newText.equals(toolTipText))) {
return;
}
newToolTipComponent = ((ComponentToolTipProvider) component).getCustomToolTipComponent(event);
if (newToolTipComponent == null)
return;
toolTipText = newText;
mouseEvent = event;
preferredLocation = newPreferredLocation;
hideTipWindow();
showTipWindow();
}