創建滑塊我已經的JPanel得到的JTextField和的JButton。我想添加監聽器到JButton,這樣當我按下按鈕並移動鼠標時,文本框的值開始改變(當我向右移動鼠標時增加,當我向左移動鼠標時增加)。所以它就像滑塊一樣。這裏是代碼從JButton的
final JPanel panel=new JPanel();
final JTextField text = new JTextField("10");
JButton button=new JButton("f");
panel.add(text);
panel.add(button);
button.addMouseListener(new MouseAdapter(){
@Override
public void mousePressed(final MouseEvent evt){
//here we add listener to read mouse position when mouse pressed on button
panel.addMouseListener(new MouseAdapter(){
int x1 = evt.getXOnScreen();
int x2;
@Override
public void mouseMoved(MouseEvent e){
// this method is never called
x2=e.getXOnScreen();
//increase(decrese) number in textfield by 1% for every moved pixel
double d = (x2-x1)*0.01+Double.parseDouble(text.getText());
text.setText(Double.toString(d));
x1=x2;
}
});
}
// now, when mouse released we should remove listener from panel
@Override
public void mouseReleased(final MouseEvent evt){
MouseListener[] ml = panel.getListeners(MouseListener.class);
panel.removeMouseListener(ml[0]);
}
});
問題是,panelListener的mouseMoved方法永遠不會被調用。我該怎麼辦?