你可以在这里看到问题:
我该如何解决这个问题?它只是偶尔有效,如果我扔掉'用我的鼠标滑块的光标,如果我等待并释放,它就不起作用。 (我的目标是寻求类似于&foffar2000的搜索栏。
timeSlider = new JSlider();
timeSlider.addMouseListener(new MouseAdapter() {
@Override
public void mouseReleased(MouseEvent e) {
try{
int dv = timeSlider.getValue() * 1000;
timeSlider.setValue(dv);
Duration draggedVal = new Duration(dv);
mediaPlayer.seek(draggedVal);
}catch (Exception e3){
}
}
});
答案 0 :(得分:0)
我找到了一个解决方案,我的问题就像我设置它来监听拖动一样。
而不是使用常识和听取实际拖拽,我反而听取了“鼠标释放”(即拖动和释放导致它将值更新为释放点)但这对我没有任何好处,并导致上面的GIF滞后。
timeSlider.addMouseMotionListener(new MouseMotionAdapter() {
@Override
public void mouseDragged(MouseEvent arg0) {
isDragging = true;
try{
int dv = timeSlider.getValue() * 1000;
timeSlider.setValue(dv);
Duration draggedVal = new Duration(dv);
mediaPlayer.seek(draggedVal);
}catch (Exception e3){
} finally {
isDragging = false;
}
}
});
现在,使用实际的“mouseDragged”动作监听器,我可以顺利地搜索任何mp3文件,并在我寻求的时候听到音乐:)