자바

자바 소스코드: 슬라이더와 ChangeEvent 예제

드린 2016. 11. 12. 00:52
반응형
package javaapplication63;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

class SliderChangeEx extends JFrame{
    JLabel la;
    JSlider[] sl = new JSlider[3];
    
    SliderChangeEx(){
        this.setTitle("슬라이더와 ChangeEvent 예제");
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setLayout(new FlowLayout());
        
        la = new JLabel("        SLIDER EXAMPLE         ");
        
        for(int i=0; i<sl.length; i++){
            sl[i]=new JSlider(JSlider.HORIZONTAL, 0, 255, 128);
            sl[i].setPaintLabels(true);
            sl[i].setPaintTicks(true);
            sl[i].setPaintTrack(true);
            sl[i].setMajorTickSpacing(50);
            sl[i].setMinorTickSpacing(10);
            sl[i].addChangeListener(new MyChangeListener());
            this.add(sl[i]);
        }
        
        sl[0].setForeground(Color.red);
        sl[1].setForeground(Color.GREEN);
        sl[2].setForeground(Color.BLUE);
        la.setOpaque(true);
        
        int r= sl[0].getValue();
        int g= sl[1].getValue();
        int b= sl[2].getValue();
        la.setBackground(new Color(r,g,b));
        
        this.add(la);
        
        this.setLocationRelativeTo(null);
        this.setSize(300,300);
        this.setVisible(true);
    }
    class MyChangeListener implements ChangeListener{

        @Override
        public void stateChanged(ChangeEvent e) {
            int r=sl[0].getValue();
            int g=sl[1].getValue();
            int b=sl[2].getValue();
            la.setBackground(new Color(r,g,b));
        }
    }
}
public class JavaApplication63 {
    public static void main(String[] args) {
        new SliderChangeEx();
    }
}

<결과>

2016/11/12 - [자바] - 자바 소스코드: JSlider를 이용한 슬라이더 만들기 예제

2016/11/12 - [자바] - 자바 소스코드: 콤보박스 활용 예제(JComboBox, JList)

2016/11/12 - [자바] - 자바 소스코드: JComboBox를 이용한 콤보박스 만들기 예제

#자바 #자바 소스코드 #JSlider #슬라이더와 ChangeEvent 예제 #색상정보

반응형