1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
/* Listing3713.java */
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
import javax.swing.event.*;
public class Listing3713
extends JFrame
implements ChangeListener
{
private JPanel coloredPanel;
private JSlider slEast;
private JSlider slSouth;
private int blue = 0;
private int red = 0;
public Listing3713()
{
super("JSlider");
addWindowListener(new WindowClosingAdapter(true));
Container cp = getContentPane();
//Vertikaler Schieberegler
slEast = new JSlider(JSlider.VERTICAL, 0, 255, 0);
slEast.setMajorTickSpacing(50);
slEast.setMinorTickSpacing(10);
slEast.setPaintTicks(true);
slEast.setPaintLabels(true);
slEast.addChangeListener(this);
cp.add(slEast, BorderLayout.EAST);
//Horizontaler Schieberegler
slSouth = new JSlider(JSlider.HORIZONTAL, 0, 255, 0);
slSouth.setMajorTickSpacing(100);
slSouth.setMinorTickSpacing(25);
slSouth.setPaintTicks(true);
slSouth.setPaintLabels(true);
slSouth.setSnapToTicks(true);
slSouth.addChangeListener(this);
cp.add(slSouth, BorderLayout.SOUTH);
//Farbiges Panel
coloredPanel = new JPanel();
coloredPanel.setBackground(new Color(red, 0, blue));
cp.add(coloredPanel, BorderLayout.CENTER);
}
public void stateChanged(ChangeEvent event)
{
JSlider sl = (JSlider)event.getSource();
if (sl == slEast) {
blue = sl.getValue();
} else {
red = sl.getValue();
}
coloredPanel.setBackground(new Color(red, 0, blue));
if (!sl.getValueIsAdjusting()) {
System.out.println("(" + red + ",0," + blue + ")");
}
}
public static void main(String[] args)
{
Listing3713 frame = new Listing3713();
frame.setLocation(100, 100);
frame.setSize(300, 250);
frame.setVisible(true);
}
}
|