0

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)
    {
    }
}
4

2 に答える 2

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
}

うまくいく

于 2012-10-16T06:06:23.317 に答える
3

sliderパネルに追加されません。slider次の行をコンストラクターに追加します。

add(carSlider);
于 2012-10-16T06:06:56.780 に答える