获取JSlider的输入和更改

我需要使用JSlider来实时输入,这意味着它将返回输入而不按任何按钮。 我有滑块的这段代码:

JPanel panel = new JPanel(); JSlider js = new JSlider(JSlider.VERTICAL, 0, 20, 10); js.setMajorTickSpacing(2); js.setPaintTicks(true); Hashtable labelTable = new Hashtable(); labelTable.put(new Integer(js.getMinimum()), new JLabel("x0")); labelTable.put(new Integer((js.getMinimum() + js.getMaximum()) / 2), new JLabel("x1")); labelTable.put(new Integer(js.getMaximum()), new JLabel("x2")); js.setLabelTable(labelTable); js.setPaintLabels(true); panel.add(js); int result = JOptionPane.showConfirmDialog(null, panel, "choose size", JOptionPane.YES_OPTION); 

甚至可以这样做吗? 我以为使用actionListener但我没有成功。

例如,可以使用ChangeListener

 slider.addChangeListener(new ChangeListener() { @Override public void stateChanged(ChangeEvent e) { JSlider slider = (JSlider) e.getSource(); int value = slider.getValue(); ... } });