我有一个包含多个组件的
我想在用户悬停在这些组件上3秒钟后显示弹出式帮助窗口。
目前,我为其中一个组件添加了
您有什么建议吗?如何实现鼠标悬停效果——仅在3秒延迟后显示弹出窗口?
示例代码:(鼠标进入方法)
JPanel
,例如几个JLabels
、JTextBoxes
、JComboBoxes
和JCheckBoxes
。我想在用户悬停在这些组件上3秒钟后显示弹出式帮助窗口。
目前,我为其中一个组件添加了
MouseListener
,它确实显示所需的弹出式帮助。但是,我无法在3秒延迟后实现此效果。只要用户将鼠标移动到该组件的区域,弹出式窗口就会立即显示。这非常烦人,使得这些组件几乎无法使用。我尝试使用MouseMotionListener
并将以下代码放在mouseMoved(MouseEvent e)
方法中。效果相同。您有什么建议吗?如何实现鼠标悬停效果——仅在3秒延迟后显示弹出窗口?
示例代码:(鼠标进入方法)
private JTextField _textHost = new JTextField();
this._textHost().addMouseListener(this);
@Override
public void mouseEntered(MouseEvent e) {
if(e.getSource() == this._textHost())
{
int reply = JOptionPane.showConfirmDialog(this, "Do you want to see the related help document?", "Show Help?", JOptionPane.YES_NO_OPTION);
if(reply == JOptionPane.YES_OPTION)
{
//Opens a browser with appropriate link.
this.get_configPanel().get_GUIApp().openBrowser("http://google.com");
}
}
}