摆动滑块未显示

时间:2012-10-16 05:57:32

标签: java swing slider

我试图使用JSwing组件向我的框架添加滑块,但由于某种原因它无法正常工作。我尝试寻找可能的解决方案,但他们要么不适用,要么没有为我工作,例如设置尺寸或可见度,以及什么不适用。基本上,为什么我的滑块不显示?

我有一个显示正常的carIcon,但滑块不会。这是我的代码。

   public static void main(String[] args)
    {
    JFrame frame = new JFrame("Slider Tester");

    MoveableShape shape = new CarShape(125, 100, CAR_WIDTH);
    slider bar = new slider();

    ShapeIcon icon = new ShapeIcon(shape,
        ICON_WIDTH, ICON_HEIGHT);

    JLabel label = new JLabel(icon);
    frame.setLayout(new FlowLayout());
    frame.add(label);
    frame.add(bar);

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setLocation(100,100);
    frame.pack();
    frame.setVisible(true);

    }

和我的滑块

public class slider extends JPanel implements ChangeListener
{

    private JSlider carSlider;

    public slider()
    {
    carSlider = new JSlider();
    carSlider.addChangeListener(this);
    }

    @Override
    public void stateChanged(ChangeEvent ce)
    {
    }
}

2 个答案:

答案 0 :(得分:3)

那么,你什么时候打算添加滑块?

public slider()
{
    carSlider = new JSlider();
    carSlider.addChangeListener(this);
}

很好地创建滑块,但对它没有任何作用......

public slider()
{
    carSlider = new JSlider();
    carSlider.addChangeListener(this);
    add(carSlider); // <-- Look and me, I'm new :D
}

会更好地工作

答案 1 :(得分:3)

slider未添加到面板中。 将此行添加到slider构造函数:

add(carSlider);