现在我有:
panel.getZoomButton().addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ACtionEvent e)
{
zoom();
}
}
每次按下变焦按钮时都会调用此方法。如何更改它,以便在按住缩放按钮时连续调用zoom()
?
答案 0 :(得分:4)
您需要使用MouseListener
并覆盖mousePressed()
方法。在那里你可以使用一个计时器或类似的东西测量时间,按下按钮,以便计算你的变焦。
也许这个问题对您有所帮助:Java MouseEvent, check if pressed down
答案 1 :(得分:2)
使用Swing Action(大多数可伸缩抽象)代替ActionListener,您可以设置isEnabled,切换到false value
直到所有事件都完成< / p>
或添加Swing Timer以重置Boolean
至true value
可以setMultiClickThreshhold(long threshhold),但仅适用于MouseEvents,此方法不会对KeyBindings
(ENTER
和TAB
键盘