You are on page 1of 7

COLORES package Unidad3;

import java.awt.Color; import java.awt.Container; import java.awt.Dimension; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JSlider; import javax.swing.JTextField; import javax.swing.SpringLayout; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener;

public class Colores extends JFrame implements ChangeListener { private JLabel etred,etgreen,etblue; private JSlider jsred,jsgreen,jsblue; private JTextField txtred,txtgreen,txtblue; private JPanel pnizq,pnder,pncolors; private Container c; private MiCanvas can;

public Colores(){

super("colores"); c=this.getContentPane(); SpringLayout spring=new SpringLayout(); c.setLayout(spring);

can=new MiCanvas(); can.setPreferredSize(new Dimension(130,80));

spring.putConstraint(SpringLayout.WEST, can, 200, SpringLayout.WEST, c); spring.putConstraint(SpringLayout.NORTH, can, 80, SpringLayout.NORTH, c); c.add(can);

etred=new JLabel("Red"); etred.setForeground(Color.red); spring.putConstraint(SpringLayout.WEST, etred, 20, SpringLayout.WEST, c); spring.putConstraint(SpringLayout.NORTH, etred, 10, SpringLayout.NORTH, c); c.add(etred); jsred=new JSlider(JSlider.VERTICAL,0,250,48);

jsred.setPaintTicks(true); jsred.setMajorTickSpacing(32); jsred.setMinorTickSpacing(16); jsred.setPaintLabels(true); jsred.setForeground(Color.GRAY); spring.putConstraint(SpringLayout.WEST, jsred, 15, SpringLayout.WEST, c); spring.putConstraint(SpringLayout.NORTH, jsred, 25, SpringLayout.NORTH, c); c.add(jsred); txtred=new JTextField(3); txtred.setText("48"); spring.putConstraint(SpringLayout.WEST, txtred, 20, SpringLayout.WEST, c); spring.putConstraint(SpringLayout.NORTH, txtred, 230, SpringLayout.NORTH, c); c.add(txtred);

etgreen=new JLabel("Green"); etgreen.setForeground(Color.green); spring.putConstraint(SpringLayout.WEST, etgreen, 80, SpringLayout.WEST, c); spring.putConstraint(SpringLayout.NORTH, etgreen, 10, SpringLayout.NORTH, c); c.add(etgreen); jsgreen=new JSlider(JSlider.VERTICAL,0,250,160); jsgreen.setPaintTicks(true); jsgreen.setMajorTickSpacing(32); jsgreen.setMinorTickSpacing(16); jsgreen.setPaintLabels(true);

jsgreen.setForeground(Color.GRAY); spring.putConstraint(SpringLayout.WEST, jsgreen, 75, SpringLayout.WEST, c); spring.putConstraint(SpringLayout.NORTH, jsgreen, 25, SpringLayout.NORTH, c); c.add(jsgreen); txtgreen=new JTextField(3); txtgreen.setText("160"); spring.putConstraint(SpringLayout.WEST, txtgreen, 80, SpringLayout.WEST, c); spring.putConstraint(SpringLayout.NORTH, txtgreen, 230, SpringLayout.NORTH, c); c.add(txtgreen);

etblue=new JLabel("Blue"); etblue.setForeground(Color.blue); spring.putConstraint(SpringLayout.WEST, etblue, 140, SpringLayout.WEST, c); spring.putConstraint(SpringLayout.NORTH, etblue, 10, SpringLayout.NORTH, c); c.add(etblue); jsblue=new JSlider(JSlider.VERTICAL,0,250,224); jsblue.setPaintTicks(true); jsblue.setMajorTickSpacing(32); jsblue.setMinorTickSpacing(16); jsblue.setPaintLabels(true); jsblue.setForeground(Color.GRAY); spring.putConstraint(SpringLayout.WEST, jsblue, 135, SpringLayout.WEST, c); spring.putConstraint(SpringLayout.NORTH, jsblue, 25, SpringLayout.NORTH, c); c.add(jsblue);

txtblue=new JTextField(3); txtblue.setText("224"); spring.putConstraint(SpringLayout.WEST, txtblue, 140, SpringLayout.WEST, c); spring.putConstraint(SpringLayout.NORTH, txtblue, 230, SpringLayout.NORTH, c); c.add(txtblue);

jsred.addChangeListener(this); jsgreen.addChangeListener(this); jsblue.addChangeListener(this);

this.setSize(360, 300); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setLocationRelativeTo(null); this.setVisible(true); } class MiCanvas extends JPanel{ int r=48; int g=160; int b=224; Color color;

public MiCanvas(){

Colorfondo(); }

public void Colorfondo(){ color = new Color(r, g, b); setBackground(color); } }

public static void main(String[] args) { Colores app=new Colores(); }

@Override public void stateChanged(ChangeEvent ce) {

txtred.setText(String.valueOf(jsred.getValue())); txtgreen.setText(String.valueOf(jsgreen.getValue())); txtblue.setText(String.valueOf(jsblue.getValue()));

can.r=jsred.getValue(); can.Colorfondo(); can.g=jsgreen.getValue();

can.Colorfondo(); can.b=jsblue.getValue(); can.Colorfondo();

You might also like