返回列表 發帖
本帖最後由 蔡庭豪 於 2018-5-12 10:25 編輯
  1. package bbs.istak.org.tw;

  2. import java.awt.BorderLayout;
  3. import java.awt.EventQueue;

  4. import javax.swing.JFrame;
  5. import javax.swing.JPanel;
  6. import javax.swing.border.EmptyBorder;
  7. import javax.swing.GroupLayout;
  8. import javax.swing.GroupLayout.Alignment;
  9. import javax.swing.JLabel;
  10. import javax.swing.JSlider;
  11. import javax.swing.event.ChangeListener;
  12. import javax.swing.event.ChangeEvent;
  13. import java.awt.Color;

  14. public class RGB extends JFrame {

  15.         private JPanel contentPane;

  16.         /**
  17.          * Launch the application.
  18.          */
  19.         public static void main(String[] args) {
  20.                 EventQueue.invokeLater(new Runnable() {
  21.                         public void run() {
  22.                                 try {
  23.                                         RGB frame = new RGB();
  24.                                         frame.setVisible(true);
  25.                                 } catch (Exception e) {
  26.                                         e.printStackTrace();
  27.                                 }
  28.                         }
  29.                 });
  30.         }

  31.         /**
  32.          * Create the frame.
  33.          */
  34.         public RGB() {
  35.                 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  36.                 setBounds(100, 100, 450, 300);
  37.                 contentPane = new JPanel();
  38.                 contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
  39.                 setContentPane(contentPane);
  40.                 contentPane.setLayout(null);
  41.                
  42.                 JLabel lblRed = new JLabel("red");
  43.                 lblRed.setForeground(Color.RED);
  44.                 lblRed.setBounds(10, 192, 21, 15);
  45.                 contentPane.add(lblRed);
  46.                
  47.                 JLabel lblGreen = new JLabel("green");
  48.                 lblGreen.setForeground(Color.GREEN);
  49.                 lblGreen.setBounds(10, 215, 36, 15);
  50.                 contentPane.add(lblGreen);
  51.                
  52.                 JLabel lblBlue = new JLabel("blue");
  53.                 lblBlue.setForeground(Color.BLUE);
  54.                 lblBlue.setBounds(10, 237, 21, 15);
  55.                 contentPane.add(lblBlue);
  56.                
  57.                 JLabel gl = new JLabel();
  58.                 gl.setText("0");
  59.                 gl.setBounds(403, 207, 21, 23);
  60.                 contentPane.add(gl);
  61.                
  62.                 JLabel bl = new JLabel();
  63.                 bl.setText("0");
  64.                 bl.setBounds(403, 229, 21, 23);
  65.                 contentPane.add(bl);
  66.                
  67.                 JLabel rl = new JLabel();
  68.                 rl.setText("0");
  69.                 rl.setBounds(403, 184, 21, 23);
  70.                 contentPane.add(rl);
  71.                
  72.                 JSlider sliderred = new JSlider();
  73.                
  74.                 sliderred.setValue(0);
  75.                 sliderred.setMaximum(255);
  76.                 sliderred.setBounds(56, 184, 343, 23);
  77.                 contentPane.add(sliderred);
  78.                
  79.                 JSlider slidergreen = new JSlider();
  80.                
  81.                 slidergreen.setValue(0);
  82.                 slidergreen.setMaximum(255);
  83.                 slidergreen.setBounds(56, 207, 343, 23);
  84.                 contentPane.add(slidergreen);
  85.                
  86.                 JSlider sliderblue = new JSlider();
  87.                 sliderblue.setValue(0);
  88.                 sliderblue.setMaximum(255);
  89.                 sliderblue.setBounds(56, 229, 343, 23);
  90.                 contentPane.add(sliderblue);
  91.                
  92.                 JPanel panel = new JPanel();
  93.                 panel.setBounds(10, 10, 414, 172);
  94.                 contentPane.add(panel);
  95.                
  96.                 sliderblue.addChangeListener(new ChangeListener() {
  97.                         public void stateChanged(ChangeEvent arg0) {
  98.                                
  99.                                 bl.setText(String.valueOf(sliderblue.getValue()));
  100.                                 Color color = new Color(sliderred.getValue(), slidergreen.getValue(),sliderblue.getValue());
  101.                                 panel.setBackground(color);
  102.                         }
  103.                 });
  104.                 slidergreen.addChangeListener(new ChangeListener() {
  105.                         public void stateChanged(ChangeEvent arg0) {
  106.                                 gl.setText(String.valueOf(slidergreen.getValue()));
  107.                                 Color color = new Color(sliderred.getValue(), slidergreen.getValue(),sliderblue.getValue());
  108.                                 panel.setBackground(color);
  109.                         }
  110.                 });
  111.                 sliderred.addChangeListener(new ChangeListener() {
  112.                         public void stateChanged(ChangeEvent e) {
  113.                                 Color color = new Color(sliderred.getValue(), slidergreen.getValue(),sliderblue.getValue());
  114.                                 panel.setBackground(color);
  115.                         }
  116.                 });
  117.         }
  118. }
複製代碼

TOP

返回列表