如何在窗口中设置JSlider的位置?

时间:2013-08-13 11:20:27

标签: java swing layout jslider

我试图将JSlider放在应用程序的底部,但它不起作用。 JSlider实际上工作,显示所有内容,我只需将其设置在底部,只保留。

如果有人知道,那么建议我将要做什么?

我的代码:

       final JSlider slider1 ;
       slider1 = new JSlider(JSlider.HORIZONTAL,0,5,1);//direction , min , max , current

       slider1.setMajorTickSpacing(100);
       slider1.setMinorTickSpacing(25);
       slider1.setPaintLabels(true);
       slider1.setPaintTicks(true);
       slider1.setPaintTrack(true);
       slider1.setAutoscrolls(true);

       slider1.setPreferredSize(new Dimension(200,50));
       add(slider1);
       slider1.addChangeListener(new ChangeListener() 
       {

        @Override
        public void stateChanged(ChangeEvent arg0) 
        {
            // TODO Auto-generated method stub
            fval=slider1.getValue();
            repaint();
        }
       });

任何建议请...

1 个答案:

答案 0 :(得分:3)

如果你想让你的JSlider在底部试试这个:

frame.add(slider, BorderLayout.SOUTH);

在您的代码中我认为如果您添加到

就足够了
add(slider1);

这样:

add(slider1, BorderLayout.SOUTH);

编辑: 要在JFrame上显示一组带有图片的滑块,请将图片添加到JPanel,将滑块添加到JPanel。因此放置它更容易。

比你可以使用:

JPanel panel = new JPanel(new GridLayout(1, 0, 1, 0);
panel.add(slider1);
panel.add(slider2);
...
add(panel, BorderLayout.SOUTH);
add(picturepanel, BorderLayout.CENTER);

All kinds of Layouts

如果您需要更高精度,请使用网格布局!