Gracias!! Ya hace años de esto!! Gracias!!
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menúpackage graficos;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class PruebaAcciones {
public static void main(String[] args) {
// TODO Auto-generated method stub
MarcoAction marco= new MarcoAction();
marco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
marco.setVisible(true);
}
}
class MarcoAction extends JFrame{
public MarcoAction() {
setTitle("Prueba Acciones");
setBounds(600,350,600,300);
PanelAccion lamina=new PanelAccion();
add(lamina);
}
}
class PanelAccion extends JPanel{
public PanelAccion() {
AccionColor accionAmarillo=new AccionColor("Amarillo", new ImageIcon("src/graficos/bola_amarilla.gif"), Color.yellow);
AccionColor accionAzul=new AccionColor("Azul", new ImageIcon("src/graficos/bola_azul.gif"), Color.blue);
AccionColor accionRojo=new AccionColor("Rojo", new ImageIcon("src/graficos/bola_roja.gif"), Color.red);
add(new JButton(accionAmarillo)); //JButton botonAmarillo=new JButton("Amarillo"); add(botonAmarillo);
add(new JButton(accionAzul));
add(new JButton(accionRojo));
}
private class AccionColor extends AbstractAction{
public AccionColor(String nombre, Icon icono, Color color_boton) {
putValue(Action.NAME, nombre);
putValue(Action.SMALL_ICON, icono);
putValue(Action.SHORT_DESCRIPTION, "Poner la lámina de color " + nombre);
putValue("color_de_fondo", color_boton);
}
public void actionPerformed(ActionEvent e) {
Color c=(Color)getValue("Color_de_fondo");
setBackground(c);
System.out.println("Nombre: " + getValue(Action.NAME) + " Descripción: " + getValue(Action.SHORT_DESCRIPTION));
}
}
}