0

I have below snippet of code in which TestClass is extending jPanel which is using SpringLayout, in which I'm not able to add vertical scrollbar.

Could you please help me guys?



        public class TestClass extends JPanel {

            private SpringLayout layout;
            private Spring s, sprWest;
            private JComboBox comboDevice = new JComboBox();
            private JComboBox comboCommand = new JComboBox();
            private JLabel lblDevice = new JLabel("Select the Device:");
            private JLabel lblCommand = new JLabel("Select Command:");
            private JButton btnCommand = new JButton("Save");

            public TestClass () {
                layout = new SpringLayout();
                s = Spring.constant(0, 60, 60);
                setLayout(layout);
            }

            public void populateFields(){
                add(lblCommand);
                add(comboCommand);


                sprLblEast = Spring.sum(s, Spring.max(layout.getConstraints(lblCommand).getWidth(), layout.getConstraints(lblDevice).getWidth()));
                Spring strut = Spring.constant(10);

                layout.putConstraint(SpringLayout.NORTH, lblCommand, strut, SpringLayout.SOUTH, comboDevice);
                layout.putConstraint(SpringLayout.NORTH, comboCommand, strut, SpringLayout.SOUTH, comboDevice);
                layout.putConstraint(SpringLayout.EAST, lblCommand, sprLblEast, SpringLayout.WEST, this);
                layout.putConstraint(SpringLayout.WEST, comboCommand, Spring.sum(s, layout.getConstraints(lblCommand).getWidth()), SpringLayout.WEST, lblCommand);
                layout.putConstraint(SpringLayout.EAST, this, sprLblEast, SpringLayout.WEST, comboCommand);

                List cmdList = getCommandList();
                for (int index = 0; index < cmdList.size(); index++) {
                    comboCommand.addItem(cmdName);
                }
                validate();
                repaint();
            }
    }


techiepark
  • 343
  • 2
  • 7
  • 23

1 Answers1

0

I would sugest use of ScrollPane

ScrollPane mainWindow = new ScrollPane(ScrollPane.SCROLLBARS_AS_NEEDED); mainWindow.add(this);

but You would have to use another object than Your TestClass as view, here it would be mainWindow.

You could use also JScrollPane from Swing: tutorial for JScrollPane