¡¡¡Recompensa por puntuación alta por preguntas de programación Java!!!
//: SD3.java
importar?java.applet.Applet;
importar?java.awt.*;
import?javax.swing.*;
importar?javax.swing.event.ChangeEvent;
importar?javax.swing.event.ChangeListener;
público ?clase?SD3?extiende?Applet?implementa?ChangeListener, Runnable?{ privado?JSlider?hor,ver,r,g,b; privado?JPanel?centro,sur,cont;privado?Box?rb,gb,bb; privado?JLabel?rl, gl, bl; público?void?init(){ this.setSize(500, 600); this.setLayout(new?BorderLayout() center?=?new?JPanel(new?BorderLayout(); )); sur?=?nuevo?JPanel(nuevo?GridLayout(3,1)); hor?=?nuevo?JSlider(); VERTICAL); center.add(ver, BorderLayout.WEST); cont=new?JPanel(){
public?void?paint(Graphics?gg){
//rgb
int?rx?=?r.getValue();
int?gx?=?g.getValue();
int?bx?= ?b.getValue();
Color?bg?=?new?Color(rx,gx,bx);
Gráficos2D?g?=?(Graphics2D)gg;
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g.setColor(bg);
g.fillRect(0, 0, getWidth( ), getHeight());
rl.setText("Color?red?component:?" rx);
gl.setText("Color?green?component:?" gx);
bl.setText("Color?azul?componente:?" bx);
float?tt?=?rx gx bx;
rx?=?(int)(rx/tt*360);
bx?=?(int)(bx/tt*360);
gx?=?360- rx-bx;
g.setColor(Color.rojo);
g.fillArc(0, 0, h
or.getValue(), ver.getMaximum()-ver.getValue(), 0, rx);
g.setColor(Color.blue);
g.fillArc( 0, 0, hor.getValue(), ver.getMaximum()-ver.getValue(), rx, bx;
g.setColor(Color.green
); g.fillArc(0, 0, hor.getValue(), ver.getMaximum()-ver.getValue(), 0, -gx);
g.setColor(Color.black); p>
g.setColor(Color.black);
p>g.drawOval(0, 0, hor.getValue(), ver.getMaximum()-ver.getValue());
//gradient?color
int?x?=?getWidth()/2;
int?y?=?getHeight()/2;
int?w?=Math.min(x, y);
y=getHeight()-w;
x=getWidth()-w ;
for(int?i=0;?ilt ;w/2;i ){ Color?c?=?new?Color(0,0,255,(int)((flotante)i/( w/2)*255)); g.setColor(c); g.drawOval(x w/2-i, y w/2-i, i*2, i*2);
}
w-=w/2;
x =w/2;
y =w/2;
for(int? i=0;?ilt;w/2;i){ Color? c?=?nuevo?Color(0, 255, 0, (int)((float)i/(w/2)*255)); .setColor(c); g.drawOval(x w/2-i, y w/2-i, i*2, i*2);
}
//time
g.setColor(Color.orange);
g.setFont(new?Font("times?new?roman",Font.BOLD,30));
g.drawString(new?java.util.Date() .toString(), 10, getHeight()/2
} }; .add(cont); rb=?Box.createHorizontalBox(); rb .add(rl=?JLabel()); rb.add(r=nuevo?JSlider(1,255,255)); gb.add(gl=nuevo?JLabel() ); gb.add(g=nuevo?JSlider(1, 255, 255)); bb=?Box.createHorizontalBox(); ()); bb.add(b=nuevo? JSlider(1, 255, 255));
; sur.add(gb); sur.add(bb); this.add(centro, BorderLayout.CENTER); this.add(sur, BorderLayout.SOUTH); r.addChangeListener(este); g.addChangeListener(este); b.addChangeListener(este); s(ver); (¿nueva?Dimensión(168,30)); gl.setPreferredSize(nueva?Dimensión(168,30)); bl.setPreferredSize(nueva?Dimensión(168,30)); this).start(); } privado?void?s(JSlider?s){ s.setPaintTicks(true); s.setMajorTickSpacing(100); s.setMinorTickSpacing(10); )?{ cont.repaint(); } public?void?run()?{ hor.setMaximum(cont.getBounds().width); ver.setMaximum(cont.getBounds().height); .getMaximum()/2); ver.setValue(ver.getMaximum()/2); mientras(verdadero){
hor.setMaximum(cont.getBounds().width);
ver.setMaximum(cont.getBounds().height);
cont.repaint();
¿probar?{
Thread.sleep( 1000);
}?catch?(InterruptedException?e)?{} } }
}