import java.awt.Color;
import java.awt.FlowLayout;
import javax.swing.BoxLayout;
import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JSlider;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;class SliderTest extends JFrame implements ChangeListener {
JLabel label ;
JPanel panelSlider;
JTextField text;
JSlider red,green,blue;
public SliderTest() {
panelSlider = new JPanel(new GridLayout(1,3));
panelSlider.setBackground(Color.BLUE);
label = new JLabel("阈值");
text = new JTextField(10);
text.setBounds(150,150,400,500);
red = new JSlider(0,255,0);
green = new JSlider(0,255,0);
blue = new JSlider(0,255,0);
panelSlider.add(red);
panelSlider.add(green);
panelSlider.add(blue);
red.addChangeListener(this);
green.addChangeListener(this);
blue.addChangeListener(this);
red.setMajorTickSpacing(50);
red.setMinorTickSpacing(10);
red.setPaintTicks(true);
red.setPaintLabels(true);
setResizable(false);
setLayout(new FlowLayout());
setBounds(100,100,800,500);
add(panelSlider);
add(label);
add(text);
pack();
setBounds(100,100,800,500);
setVisible(true);
}
public void stateChanged(ChangeEvent e) {
System.out.println(e);
}
public static void main(String args[])
{
SliderTest st = new SliderTest();
}
}
import java.awt.FlowLayout;
import javax.swing.BoxLayout;
import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JSlider;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;class SliderTest extends JFrame implements ChangeListener {
JLabel label ;
JPanel panelSlider;
JTextField text;
JSlider red,green,blue;
public SliderTest() {
panelSlider = new JPanel(new GridLayout(1,3));
panelSlider.setBackground(Color.BLUE);
label = new JLabel("阈值");
text = new JTextField(10);
text.setBounds(150,150,400,500);
red = new JSlider(0,255,0);
green = new JSlider(0,255,0);
blue = new JSlider(0,255,0);
panelSlider.add(red);
panelSlider.add(green);
panelSlider.add(blue);
red.addChangeListener(this);
green.addChangeListener(this);
blue.addChangeListener(this);
red.setMajorTickSpacing(50);
red.setMinorTickSpacing(10);
red.setPaintTicks(true);
red.setPaintLabels(true);
setResizable(false);
setLayout(new FlowLayout());
setBounds(100,100,800,500);
add(panelSlider);
add(label);
add(text);
pack();
setBounds(100,100,800,500);
setVisible(true);
}
public void stateChanged(ChangeEvent e) {
System.out.println(e);
}
public static void main(String args[])
{
SliderTest st = new SliderTest();
}
}
green.setOrientation(SwingConstants.VERTICAL);
blue.setOrientation(SwingConstants.VERTICAL);
然后改变两个JPanel的border来试试。
就是panel的边缘是稍稍标记下,这是个panel框的范围之内即可了