Practica de Layout libre
Continuamos con la practica de Layout Libre que inicie en el anterior articulo publicado en la que quiero crear una aplicación que genere Mesajes JOptionPane.
Tal y como os comente en el anterior articulo publicado he creado una lámina principal y montando en cima de esta lamina principal distribuimos el resto de láminas utilizando setLayout(null) y luego distribuyendo cada una de las láminas con setBounds(x, y, with, heith).
En este momento he puesto los iconos en los botones, he creado otra lámina en la que he incluido otros botones y el menú al que he dotado de imágenes y de una opción que cierra la aplicación.
Os dejo el código para que lo podáis consultar, como siempre iré actualizándolo todo en mis apuntes conforme continúe avanzando,
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.GridLayout;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.*;
public class
practicaCreadorDeMensajes {
public static void main(String[] args) {
Marco_practicaCreadorDeMensajes
Marco = new Marco_practicaCreadorDeMensajes();
Marco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Marco.setVisible(true);
Marco.setExtendedState(JFrame.MAXIMIZED_BOTH);
//Marco.setBounds(100, 100, 700,
500);
}
}
class Marco_practicaCreadorDeMensajes
extends JFrame{
public Marco_practicaCreadorDeMensajes() {
setTitle("CREADOR DE MENSAJES");
Lamina_PrincipaldelMarco
PRINCIPAL = new
Lamina_PrincipaldelMarco();
Lamina_TipoMensaje
TipoBotones = new
Lamina_TipoMensaje();
Lamina_IconoSleccionado
Seleccion = new
Lamina_IconoSleccionado();
Lamina_TipoMensajeConfirmacion
Confirmacion = new
Lamina_TipoMensajeConfirmacion();
Lamina_Menu_Superior
Menu = new Lamina_Menu_Superior();
L_bott_creaMarcos
BotonesAccion = new
L_bott_creaMarcos();
PRINCIPAL.setLayout(null);
PRINCIPAL.add(Menu);
PRINCIPAL.add(TipoBotones);
PRINCIPAL.add(Seleccion);
PRINCIPAL.add(Confirmacion);
PRINCIPAL.add(BotonesAccion);
add(PRINCIPAL);
}
}
class Lamina_Menu_Superior extends JPanel{
public
Lamina_Menu_Superior() {
setBackground(Color.DARK_GRAY);
setBounds(10,10,1340,35);
//setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(Color.BLACK,
Color.RED),"TIPO DE MENSAJE"));
BarraDelMenu = new
JMenuBar();
ImageIcon
ImageIcon_ERROR = new
ImageIcon("C:\\Users\\dagip\\Desktop\\x\\src/ImageIcon_warning_1.jpg");
ImageIcon
ImageIcon_INFORMACION = new
ImageIcon("C:\\Users\\dagip\\Desktop\\v\\src/ImageIcon_informacion.jpg");
ImageIcon
ImageIcon_PELIGRO= new
ImageIcon("C:\\Users\\dagip\\Desktop\\ddddddddddd\\src/ImageIcon_herror.png");
ImageIcon
ImageIcon_NA= new
ImageIcon("C:\\Users\\dagip\\Desktop\\ddddddddddd\\src/ImageIcon_Preguntas_2.jpg");
BarraDelMenu.add(Inicio=new JMenu("INICIO"));
Inicio.add(Salir = new
JMenuItem("Salir",new
ImageIcon("C:\\Users\\dagip\\Desktop\\ddddddddddd\\src/SALIR.jpg")));
//ponemos a la escucha
el menú salir
Salir.addActionListener(new ActionListener(){
public void
actionPerformed(ActionEvent e) {
System.exit
(0);//salir del
sistema//
}
});
BarraDelMenu.add(TipMensaje = new JMenu("TIPO MENSAJE"));
TipMensaje.add(ENT_DATOS = new JMenuItem("ENTRADA DATOS POR
CONSOLA"));
TipMensaje.add(MENSAJE = new JMenuItem("MENSAJES"));
TipMensaje.add(COFIRMACI = new JMenuItem("MENSAJE ESTANDAR "));
TipMensaje.add(OPCIONES = new JMenuItem("MENSAJE OPCIONES "));
SubTipo.add(ERROR =
new JMenuItem("ERROR",ImageIcon_ERROR));
SubTipo.add(PELIGRO =
new JMenuItem("PELIGRO",ImageIcon_PELIGRO));
SubTipo.add(INFORMACION =
new JMenuItem("INFORMACION",ImageIcon_INFORMACION));
SubTipo.add(NA = new JMenuItem("PORDEFECTO",ImageIcon_NA));
BarraDelMenu.add(BotConfirmacion = new JMenu("MENSAJE CONFIRMACIÓN"));
grupotipo = new ButtonGroup();
grupotipo.add(PORDEFECTO = new JRadioButton("PORDEFECTO"));
grupotipo.add(SiNO = new JRadioButton("SI / NO"));
grupotipo.add(SICANCELAR = new JRadioButton("SI / CANCELAR"));
grupotipo.add(SINOCANCELAR = new JRadioButton("SI / NO / CANCELAR"));
BotConfirmacion.add(PORDEFECTO) ;
BotConfirmacion.add(SiNO);
BotConfirmacion.add(SICANCELAR) ;
BotConfirmacion.add(SINOCANCELAR);
add(BarraDelMenu);
}
private JMenu Inicio,TipMensaje,SubTipo,BotConfirmacion,CargaJMenu ;
private JMenuItem Salir,ERROR,PELIGRO,INFORMACION,NA,
ENT_DATOS,MENSAJE,COFIRMACI,OPCIONES;
private ButtonGroup grupotipo;
private JRadioButton PORDEFECTO,SiNO,SICANCELAR,SINOCANCELAR;
private JMenuBar BarraDelMenu;
}
class Lamina_PrincipaldelMarco extends JPanel{
public Lamina_PrincipaldelMarco() {
setBackground(Color.BLACK);
}
}
class Lamina_TipoMensaje extends JPanel{
public Lamina_TipoMensaje() {
setBackground(Color.WHITE);
setBounds(10,60,300,100);
setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(Color.BLACK, Color.RED),"TIPO DE MENSAJE"));
JComboBox
comboTipoMensaje = new JComboBox(new String[] {"MENSAJE DE ENTRADA
DATOS","MENSAJE AVISO","MENSAJE CONFIRMACION","MENSAJE OPCIONES"});
add(new JLabel("TIPOMENSAJE"));
add(comboTipoMensaje);
}
}
class Lamina_IconoSleccionado extends JPanel{
public Lamina_IconoSleccionado() {
setBackground(Color.WHITE);
setBounds(10,170,300,150);
setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(Color.BLACK, Color.RED),"TIPO DE ICONO"));
setLayout(new GridLayout(4,1));
TIP_MEN_CONFIRM = new
ButtonGroup();
PORDEFECTO = new
JRadioButton("ESTANDAR");
SiNO = new JRadioButton("SI / NO");
SICANCELAR = new
JRadioButton("SI /
CANCELAR");
SINOCANCELAR = new
JRadioButton("SI / NO
/ CANCELAR");
TIP_MEN_CONFIRM.add(PORDEFECTO);
TIP_MEN_CONFIRM.add(SiNO);
TIP_MEN_CONFIRM.add(SICANCELAR);
TIP_MEN_CONFIRM.add(SINOCANCELAR);
add(PORDEFECTO);add(SiNO);add(SICANCELAR);add(SINOCANCELAR);
}
JRadioButton PORDEFECTO,SiNO,SICANCELAR,SINOCANCELAR;
ButtonGroup TIP_MEN_CONFIRM;
}
class Lamina_TipoMensajeConfirmacion
extends JPanel{
public Lamina_TipoMensajeConfirmacion() {
setBackground(Color.WHITE);
setBounds(10,330,300,200);
setLayout(new GridLayout(3,1));
setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(Color.BLACK, Color.RED),"TIPO DE MENSAJE CONFIRMACIÓN"));
ImageIcon_ERROR = new
ImageIcon("C:\\Users\\dagip\\Desktop\\x\\src/ImageIcon_warning_1.jpg");
ImageIcon_INFORMACION = new
ImageIcon("C:\\Users\\dagip\\Desktop\\x\\src/ImageIcon_informacion.jpg");
ImageIcon_PELIGRO= new
ImageIcon("C:\\Users\\dagip\\Desktop\\x\\src/ImageIcon_herror.png");
ImageIcon_PREGUNTA= new
ImageIcon("C:\\Users\\dagip\\Desktop\\x\\src/ImageIcon_Warning_2.png");
ImageIcon_NA= new
ImageIcon("C:\\Users\\dagip\\Desktop\\x\\src/ImageIcon_Preguntas_2.jpg");
Botones = new
ButtonGroup();
Array_Botones = new
JButton[] {ERROR = new
JButton("ERROR",ImageIcon_ERROR),
INFORMACION = new JButton("INFORMACION",ImageIcon_INFORMACION),
PELIGRO = new JButton("PILIGRO",ImageIcon_PELIGRO),
PREGUNTA = new JButton("PREGUNTA",ImageIcon_NA),
NA = new JButton("N/A",ImageIcon_PREGUNTA)
};
for (int i =0;i<Array_Botones.length;i++) {
Botones.add(Array_Botones[1]);
add(Array_Botones[i]);
}
}
JButton ERROR,INFORMACION,PELIGRO,PREGUNTA,NA,Array_Botones[];
ButtonGroup Botones;
ImageIcon ArraydeIcono[],ImageIcon_ERROR,ImageIcon_INFORMACION,ImageIcon_PELIGRO,ImageIcon_PREGUNTA,ImageIcon_NA;
}
class L_bott_creaMarcos extends JPanel{
public L_bott_creaMarcos() {
setBackground(Color.WHITE);
setBounds(10,550,300,130);
setLayout(new GridLayout(1,1));
setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(Color.BLACK, Color.RED),"TIPO DE MENSAJE CONFIRMACIÓN"));
add(CrearMesaje=new
JButton("CREARMENSAJE", new
ImageIcon("C:\\Users\\dagip\\Desktop\\ddddddddddd\\src/ImageIcon_BIEN.png")));
add(Cancelar=new
JButton("CANCELAR", new
ImageIcon("C:\\Users\\dagip\\Desktop\\ddddddddddd\\src/ImageIcon_Aspa.png")));
}
JButton Cancelar,CrearMesaje;
}
No hay comentarios:
Publicar un comentario