Analista Programador
INGENIA-CAFI
JAVA DEVELOPER MODULO 1
Sesin 5: Fundamentos del Lenguaje
Tutor: Gelber C. Uscuchagua Flores
// EJEMPLO 1
// Crear una clase Java que permita crear un Frame de dimensiones 300x250
// Archivo: [Link]
import [Link];
public class Primerframe {
public static void main(String[] args) {
Frame f = new Frame("Primer Frame");
[Link](300,250);
[Link](60,50);
[Link]();
}
}
// EJEMPLO 2
// Crear una clase que se extienda de la clase Frame y que dibuje una cuadricula en la
//ventana o frame.
// Archivo: [Link]
import [Link].*;
public class Cuadricula extends Frame {
public Cuadricula(String nombre) { super(nombre); }
public Cuadricula() { super(); }
public void paint(Graphics g) {
/* objeto Dimension tiene solo dos miembros width y height(ancho y alto) */
Dimension d = size();
int gridx = [Link]/3;
int gridy = [Link]/3;
for(int x=1;x<3;x++){
for(int y=1;y<3;y++){
Analista Programador
INGENIA-CAFI
[Link](gridx*x,0,gridx*x,[Link]);
[Link](0,gridy*y,[Link],gridy*y);
}
}
}
}
// Crear una clase que utilice la clase extendida para crear una ventana
// Archivo: uso_Cuadricula.java
import [Link].*;
public class uso_Cuadricula {
public static void main(String[] args) {
Frame f = new Cuadricula("Prueba");
[Link](350,250);
[Link](60, 75);
[Link]();
}
}
// EJEMPLO 3
//Crear una clase que contenga un Frame con dos botones (Aceptar y Cancelar)..
// Archivo: [Link]
import [Link].*;
public class Botones0 {
public static void main(String[] arg) {
Button bt_aceptar;
Button bt_cancelar;
Frame ventana = new Frame("Botones");
[Link](null);
bt_aceptar = new Button("Aceptar");
bt_cancelar = new Button("Cancelar");
[Link](bt_aceptar);
Analista Programador
INGENIA-CAFI
[Link](bt_cancelar);
// shape es la forma de los botones x e y en la esquina del frame
bt_aceptar.reshape(10, 30, 75, 45);
bt_cancelar.reshape(10, 85, 75, 45);
[Link](60, 75, 250, 200);
[Link]();
}
}
// EJEMPLO 4
//Crear una clase que contenga un Frame y que maneje un evento para cerrar la ventana al
//hacer click en [x]
// Archivo: [Link]
import [Link].*;
public class CerrandoVentana {
public static void main(String[] args) {
Frame f = new Frame("Ejercicio de Evento") {
public boolean handleEvent(Event evt) {
if ([Link] == Event.WINDOW_DESTROY)
[Link](0);
return true;
}
};
[Link]();
}
}
// EJEMPLO 5
//Crear una clase extendida de Canvas que personalice los eventos de un Button.
//Crear una clase extendida de Frame que contenga tres botones personalizados
//(Objetos relacionados al botn propio).
// Archivo: [Link]
import [Link].*;
public class BotonPropio extends Canvas {
private boolean cursorAdentro;
private boolean cursorPresionado;
Analista Programador
INGENIA-CAFI
public boolean mouseEnter(Event evt, int x, int y) {
cursorAdentro = true;
repaint();
return true;
}
public boolean mouseExit(Event evt, int x, int y) {
cursorAdentro = false;
repaint();
return true;
}
public boolean mouseDown(Event evt, int x, int y) {
cursorPresionado = true;
repaint();
return true;
}
public boolean mouseUp(Event evt, int x, int y) {
cursorPresionado = false;
repaint();
if (cursorAdentro) {
Event e = new Event(this, Event.ACTION_EVENT, null);
deliverEvent(e);
}
return false;
}
public void paint(Graphics g) {
Color c = getBackground();
if (cursorAdentro && cursorPresionado)
c = getForeground();
[Link](c);
Dimension dim = size();
[Link](0, 0, [Link], [Link]);
}
}
//Crear una clase extendida de Frame que contenga tres botones personalizados
//(Objetos relacionados al botn propio).
// Archivo: uso_BotonPropio.java
import [Link].*;
public class uso_BotonPropio extends Frame {
Analista Programador
INGENIA-CAFI
public static void main(String[] args) {
Frame f = new uso_BotonPropio();
}
BotonPropio b1, b2, b3, b4;
public uso_BotonPropio() {
super("Ejercicio BotonPropio");
setLayout(null);
b1 = new BotonPropio();
[Link]([Link]);
[Link]([Link]);
b2 = new BotonPropio();
[Link]([Link]);
[Link]([Link]);
b3 = new BotonPropio();
[Link]([Link]);
[Link]([Link]);
b4 = new BotonPropio();
[Link]([Link]);
[Link]([Link]);
resize(400, 400);
[Link](0, 0, 200, 200);
[Link](200, 0, 200, 200);
[Link](0, 200, 200, 200);
[Link](200, 200, 200, 200);
add(b1);
add(b2);
add(b3);
add(b4);
show();
}
public boolean action(Event evt, Object arg) {
if([Link] == b1)
[Link]("B1 fue presionado!");
if([Link] == b2)
[Link]("B2 fue presionado!");
if([Link] == b3)
[Link]("B3 fue presionado!");
if([Link] == b4)
Analista Programador
INGENIA-CAFI
[Link]("B4 fue presionado!");
return true;
}
}
// EJEMPLO 6
//Crear una clase que contenga un Frame y que maneje , por medio de un Listener, un
//evento para cerrar la ventana al hacer click en [x]
// Archivo: [Link]
import [Link].*;
import [Link].*;
public class ListenCerrando {
public static void main(String[] args) {
WindowListener wl = new WindowAdapter() {
public void windowClosing(WindowEvent e) { [Link](0); }
public void windowOpened(WindowEvent e) { }
public void windowClosed(WindowEvent e) { }
public void windowIconified(WindowEvent e) { }
public void windowDeiconified(WindowEvent e) { }
public void windowActivated(WindowEvent e) { }
public void windowDeactivated(WindowEvent e) { }
};
Frame closingFrame = new Frame("Closing Frame Test");
[Link](wl);
[Link](60, 75, 250, 400);
[Link](true);
}
}
// EJEMPLO 7
//Dibujar una Texto en la posicin 50,50.
//Java Basico Ingenia
// Archivo: [Link]
import [Link].*;
public class Ventana1 extends Frame {
public Ventana1(String nombre) {
super(nombre);
Analista Programador
INGENIA-CAFI
}
public Ventana1() {
super();
}
public void paint(Graphics g) {
Dimension d = size();
[Link](new Color(0,0,0));
[Link]("Java Basico Ingenia", 50, 50);
Font f = [Link]();
FontMetrics fm = [Link](f);
[Link]("Altura total: "+[Link]());
[Link]("Espacio: "+[Link]());
[Link]("Alto: "+[Link]());
[Link]("Bajo: "+[Link]());
}
}
// Archivo: [Link]
import [Link].*;
public class DibujandoTexto {
public static void main(String[] arg) {
Ventana1 v1 = new Ventana1("Dibujando Texto");
[Link](450, 200);
[Link](true);
}
}
// EJEMPLO 8
//Crear un Frame que dibuje dos textos con diferente formato:
//
Java Basico
//
Ingenia
// Archivo: [Link]
import [Link].*;
public class Ventana2 extends Frame {
public Ventana2(String nombre) {
super(nombre);
}
Analista Programador
INGENIA-CAFI
public Ventana2() {
super();
}
public void paint(Graphics g) {
Dimension d = size();
[Link](new Color(0,0,0));
[Link]("Dibujando Fuentes", 50, 50);
[Link](new Font("Monospaced", [Link], 36));
[Link]("Dibujando Fuentes", 100, 100);
}
}
// Archivo: [Link]
import [Link].*;
public class DibujandoFuente {
public static void main(String[] arg) {
Ventana2 v2 = new Ventana2("Dibujando Fuente");
[Link](600, 200);
[Link](true);
}
}
// EJEMPLO 9
//Dibujar una Imagen que tenga como contenido el texto Java Basico Ingenia con una lnea
//debajo (simulando un estilo subrayado).
// Archivo: [Link]
import [Link].*;
public class Ventana3 extends Frame {
public Ventana3(String nombre) {
super(nombre);
}
public Ventana3() {
super();
}
public void paint(Graphics g) {
Analista Programador
INGENIA-CAFI
Dimension d = getSize();
Image i = createImage([Link],[Link]);
Graphics gp = [Link]();
[Link]("Java Basico - Ingenia", 50, 50);
[Link](50,55,170,55);
[Link]();
[Link](i,0,0,null);
}
}
// Archivo: [Link]
public class DibujandoMemoria {
public static void main(String[] args) {
Ventana3 v3 = new Ventana3("Dibujando Memoria");
[Link](250, 200);
[Link](true);
}
}
// EJEMPLO 10
//Cargar una imagen del disco y dibujarla en la aplicacin.
// Archivo: [Link]
import [Link].*;
public class Ventana4 extends Frame {
Image img = [Link]().getImage("D:\\ruta de la figura\\[Link]");
public Ventana4(String nombre) {
super(nombre);
}
public Ventana4() {
super();
}
public void repaint(Graphics g) {
paint(g);
}
public void paint(Graphics g) {
[Link](img,50,50,100,100,this);
}
}
Analista Programador
INGENIA-CAFI
// EJEMPLO 11
//Crear un applet que imprima un mensaje de texto Primer Applet.
// Archivo: [Link]
import [Link].*;
import [Link].*;
public class PrimerApplet extends Applet {
public void paint(Graphics g) {
[Link]("Primer Applet",50,50);
}
}
// EJEMPLO 12
//Utiliza las capacidades aprendidas para crear un Reloj en un Applet.
// Archivo: [Link]
import [Link].*;
import [Link].*;
import [Link];
public class Reloj extends Applet implements Runnable {
Thread animador;
String horactual="";
Date date;
boolean running = true;
public void init() {
animador = new Thread(this);
[Link]();
}
public void destroy() {
running = false;
animador = null;
}
public void run() {
while (running) {
date = new Date();
String hora = [Link]() + ":" + [Link]() + ":"
+ [Link]();
10
Analista Programador
INGENIA-CAFI
horactual=hora;
try {
[Link](1000);
} catch (Exception e) {
}
repaint();
}
}
public void update(Graphics g) {
paint(g);
}
public void paint(Graphics g) {
Dimension d = getSize();
[Link]([Link]);
[Link](0,0,[Link],[Link]);
[Link]([Link]);
[Link](horactual,50,50);
}
}
// EJEMPLO 13
// Crear un Frame que contenga cinco (5) botones organizados usando FlowLayout().
// Archivo: [Link]
import [Link].*;
public class PrimerLayout {
public static void main(String[] args) {
Frame f = new Frame("Ejemplo de Layout");
[Link](new FlowLayout());
[Link](new Button("Boton 1"));
[Link](new Button("Boton 2"));
[Link](new Button("Boton 3"));
[Link](new Button("Boton 4"));
[Link](new Button("Boton 5"));
[Link](250, 200);
[Link]();
}
}
11
Analista Programador
INGENIA-CAFI
// EJEMPLO 14
//Crear un JFrame con un tamao 300 x 100, con titulo y que procese su evento de cerrar
//ventana.
// Archivo: [Link]
import [Link].*;
import [Link].*;
public class JVentana extends JFrame {
public static void main( String args[] ) {
// crea un objeto de tipo JVentana
JVentana ventana = new JVentana();
procesaEventos eventos = new procesaEventos();
// Le agrega un OYENTE
// un listener es un objeto necesario para procesar
// los eventos que ocurren en el objeto sobre el cual es llamado
[Link]( eventos );
// Le colocamos un ttulo
[Link]( "Mi primera Ventana" );
// Le ponemos un tamao
[Link]( 300, 100 );
// mostramos la ventana
[Link]();
}
}
// Esta clase permite el procesamiento de eventos de
// la ventana, solo respondemos al cierre de la misma
// los otros eventos no se sobrecargan y se procesan
// por defecto
class procesaEventos extends WindowAdapter {
// reacciona ante el intento de cierre de
// la aplicacion
public void windowClosing( WindowEvent e ) {
// termina la aplicacin
[Link](0);
}
}
12
Analista Programador
INGENIA-CAFI
// EJEMPLO 15
//Hacer uso de los contenedores y componentes para crear una figura circular e interactuar
//con su color, tamao y posicin.
// Archivo: [Link]
import [Link].*;
import [Link].*;
import [Link].*;
import [Link].*;
public class VentanaDibujo extends JFrame {
//COMPONENTES DE LA VENTANA
private JButton btnLimpiar;
private JLabel lblCentro;
private JPanel panBotones;
private JLabel lblFigura;
private JComboBox cboFigura;
private JPanel panSuperior;
private JPanel panControles;
private JTextField txtRadio;
private JTextField txtCY;
private JTextField txtCX;
private JLabel lblRadio;
private JComboBox cboColor;
private JPanel panPrincipal;
private JLabel lblColor;
private JButton btnSalir;
private JButton btnDibujar;
private JPanel panDibujo;
//OBJETOS DE DIBUJO
private [Link] circulo;
//CONSTRUCTOR
public VentanaDibujo() {
setSize(430,300);
initComponents();
}
//INICIALIZA LOS COMPONENTES EN LA VENTANA
private void initComponents() {
panPrincipal = new JPanel();
panSuperior = new JPanel();
lblFigura = new JLabel();
lblRadio = new JLabel();
cboFigura = new JComboBox();
txtRadio = new JTextField();
panControles = new JPanel();
lblColor = new JLabel();
13
Analista Programador
INGENIA-CAFI
lblCentro = new JLabel();
txtCX = new JTextField();
txtCY = new JTextField();
cboColor = new JComboBox();
panBotones = new JPanel();
btnDibujar = new JButton();
btnLimpiar = new JButton();
btnSalir = new JButton();
//LA VENTANA
getContentPane().setLayout(new GridLayout(1, 2));
setTitle("Ventana de Grficos");
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
exitForm(evt);
}
});
//PANEL PRINCIPAL
[Link](new GridLayout(3, 1));
//SUB PANEL SUPERIOR
[Link](null);
[Link](new [Link](255, 255, 204));
[Link]("Figura");
[Link](lblFigura);
[Link](30, 40, 80, 20);
[Link]("Radio");
[Link](lblRadio);
[Link](30, 70, 80, 20);
[Link](new [Link](255, 255, 204));
[Link](new [Link](new String[] { "Circulo" }));
[Link](cboFigura);
[Link](80, 40, 90, 20);
[Link]("20.0");
[Link](txtRadio);
[Link](80, 70, 50, 20);
[Link](panSuperior);
//SUB PANEL De CONTROLES
[Link](null);
[Link](new Color(255, 255, 204));
[Link]("Color");
[Link](lblColor);
[Link](30, 10, 80, 20);
[Link]("Centro");
[Link](lblCentro);
[Link](30, 40, 80, 20);
[Link]("0.0");
[Link](txtCX);
[Link](80, 40, 40, 20);
[Link]("0.0");
14
Analista Programador
INGENIA-CAFI
[Link](txtCY);
[Link](130, 40, 40, 20);
[Link](new Color(255, 255, 204));
[Link](new DefaultComboBoxModel(new String[] { "Rojo", "Verde", "Azul" }));
[Link](0);
[Link](cboColor);
[Link](80, 10, 90, 20);
[Link](panControles);
//SUB PANEL DEL BOTONES
[Link](new FlowLayout([Link], 5, 10));
[Link](new Color(255, 255, 204));
[Link]("Dibujar");
[Link](new ActionListener() {
public void actionPerformed(ActionEvent evt) {
btnDibujarActionPerformed(evt);
}
});
[Link](btnDibujar);
[Link]("Limpiar");
[Link](new ActionListener() {
public void actionPerformed(ActionEvent evt) {
btnLimpiarActionPerformed(evt);
}
});
[Link](btnLimpiar);
[Link]("Salir");
[Link](new ActionListener() {
public void actionPerformed(ActionEvent evt) {
btnSalirActionPerformed(evt);
}
});
[Link](btnSalir);
[Link](panBotones);
getContentPane().add(panPrincipal);
//PANEL DE DIBUJO
panDibujo = new JPanel() {
public void paintComponent(Graphics g) {
Graphics2D g2d = (Graphics2D)g;
[Link](0,0,getWidth(), getHeight());
//Crea el objeto a Dibujar
circulo = new [Link](100.0 + [Link]( [Link]() ),
100.0 + [Link]( [Link]() ),
[Link]( [Link]() ),
15
Analista Programador
INGENIA-CAFI
[Link]( [Link]() ));
[Link]( [Link] );
//Establece el color de relleno
if ([Link]() == 0)
[Link]( [Link] );
else if ([Link]() == 1)
[Link]( [Link] );
else if ([Link]() == 2)
[Link]( [Link] );
[Link]( circulo );
}
};
[Link](new [Link](new [Link](0, 0, 0), 2, true));
getContentPane().add(panDibujo);
}
private void btnDibujarActionPerformed(ActionEvent evt) {
//Redibuja el componente
[Link]();
}
private void btnLimpiarActionPerformed(ActionEvent evt) {
//Valor de Inicio
[Link]("20.0");
[Link]("0.0");
[Link]("0.0");
[Link](2);
}
private void btnSalirActionPerformed(ActionEvent evt) {
WindowEvent we = new [Link](this,0);
exitForm(we);
}
private void exitForm(WindowEvent evt) {
[Link](0);
}
public static void main(String args[]) {
new VentanaDibujo().show();
}
}
16
Analista Programador
INGENIA-CAFI
// EJEMPLO 16
//Crear una Ventana Login que nos muestre un componente JOptionPane, en dos casos,
//uno si ha sido validado el usuario y la contrasea, y otro sino ha sido validado.
// Archivo: [Link]
import [Link].*;
import [Link].*;
import [Link].*;
public class VentanaLogin extends JFrame {
//Controles de ventana
private JTextField txtUsuario;
private JPasswordField txtPassword;
private JLabel lblUsuario;
private JLabel lblPassword;
private JButton btnAceptar;
private JButton btnCancelar;
//Contenedores de componentes
private JPanel panInferior;
private JPanel panSuperior;
public VentanaLogin() {
initComponents();
}
private void initComponents() {
panSuperior = new JPanel();
lblUsuario = new JLabel();
txtUsuario = new JTextField();
lblPassword = new JLabel();
txtPassword = new JPasswordField();
panInferior = new JPanel();
btnAceptar = new JButton();
btnCancelar = new JButton();
//DISEO PARA LA VENTANA
getContentPane().setLayout(new GridLayout(2, 2));
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
exitForm(evt);
}
});
//DISEO PANEL SUPERIOR
[Link](new GridLayout(2, 2, 0, 10));
[Link](new Color(204, 204, 255));
17
Analista Programador
INGENIA-CAFI
[Link]("Usuario");
[Link]("Contrasea");
[Link](lblUsuario);
[Link](txtUsuario);
[Link](lblPassword);
[Link](txtPassword);
getContentPane().add(panSuperior);
//DISEO PANEL INFERIOR
[Link](new Color(204, 204, 255));
[Link]("Aceptar");
[Link](new ActionListener() {
public void actionPerformed(ActionEvent evt) {
btnAceptarActionPerformed(evt);
}
});
[Link]("Cancelar");
[Link](new ActionListener() {
public void actionPerformed(ActionEvent evt) {
btnCancelarActionPerformed(evt);
}
});
[Link](btnAceptar);
[Link](btnCancelar);
getContentPane().add(panInferior);
//DIMESIN DE LA VENTANA
Dimension screenSize = [Link]().getScreenSize();
setSize(new Dimension(310, 140));
setLocation(([Link]-276)/2,([Link]-127)/2);
}
private void btnCancelarActionPerformed(ActionEvent evt) {
//Ponemos a vaco
[Link]("");
[Link]("");
}
private void btnAceptarActionPerformed(ActionEvent evt) {
//Verificamos el usuario y password
if ( [Link]().equals("visita") &&
[Link]().equals("visita") ) {
//Muestra mensaje, que el usuario esta OK.
[Link](this,
"Bienvenido " + [Link]() , "Inicio de Sesin",
JOptionPane.INFORMATION_MESSAGE);
}
else {
[Link](this,
"El usuario o contrasea es incorrecto.",
18
Analista Programador
INGENIA-CAFI
"Error",
JOptionPane.ERROR_MESSAGE);
}
}
private void exitForm(WindowEvent evt) {
[Link](0);
}
//Mtodo Principal
public static void main( String args[] ) {
// crea un objeto de tipo VentanaLogin
VentanaLogin login = new VentanaLogin();
//Ttulo de la ventana
[Link]( "Inicio de Sesin" );
//Mostramos la ventana
[Link]();
}
}
// EJEMPLO 17
//Crear un JInternalFrame (frames internos) que tenga sus propiedades habilitadas y un
// Archivo: [Link]
import [Link];
import [Link].*;
import [Link].*;
public class FrameInterno extends JInternalFrame {
static int openFrameCount = 0;
static final int xOffset = 30, yOffset = 30;
public FrameInterno() {
super("Documento Nro. " + (++openFrameCount),
true, //resizable
true, //closable
true, //maximizable
true);//iconifiable
setSize(300,300);
setLocation(xOffset*openFrameCount, yOffset*openFrameCount);
setVisible(true);
}
}
19
Analista Programador
INGENIA-CAFI
//JFrame (frame contenedor) que contenga y pueda crear frames internos a traves de su
//JMenu
// Archivo: [Link]
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link].*;
import [Link].*;
public class FrameContenedor extends JFrame {
JDesktopPane desktop;
public FrameContenedor() {
super("Frame Contenedor");
int inset = 50;
Dimension screenSize = [Link]().getScreenSize();
setBounds(inset, inset,[Link] - inset*2, [Link]-inset*2);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
[Link](0);
}
});
desktop = new JDesktopPane();
createFrame();
setContentPane(desktop);
setJMenuBar(createMenuBar());
}
protected JMenuBar createMenuBar() {
JMenuBar menuBar = new JMenuBar();
JMenu menu = new JMenu("Documento");
JMenuItem menuItemNuevo = new JMenuItem("Nuevo");
[Link](new ActionListener() {
public void actionPerformed(ActionEvent e) {
createFrame();
}
});
20
Analista Programador
INGENIA-CAFI
JMenuItem menuItemSalir = new JMenuItem("Salir");
[Link](new ActionListener() {
public void actionPerformed(ActionEvent e) {
[Link](0);
}
});
[Link](menuItemNuevo);
[Link](menuItemSalir);
[Link](menu);
return menuBar;
}
protected void createFrame() {
FrameInterno frameinterno = new FrameInterno();
[Link](frameinterno);
try {
[Link](true);
} catch ([Link] e2) {}
}
public static void main(String[] args) {
FrameContenedor frame = new FrameContenedor();
[Link](true);
}
}
21
Analista Programador
INGENIA-CAFI
import [Link].*;
import [Link].*;
import [Link].*;
import [Link].*;
public class VentanaDibujo extends JFrame {
//COMPONENTES DE LA VENTANA
private JButton btnLimpiar;
private JLabel lblCentro;
private JPanel panBotones;
private JLabel lblFigura;
private JComboBox cboFigura;
private JPanel panSuperior;
private JPanel panControles;
private JTextField txtRadio;
private JTextField txtCY;
private JTextField txtCX;
private JLabel lblRadio;
private JComboBox cboColor;
private JPanel panPrincipal;
private JLabel lblColor;
private JButton btnSalir;
private JButton btnDibujar;
private JPanel panDibujo;
//OBJETOS DE DIBUJO
private [Link] circulo;
private Rectangle2D rectangulo;
// private [Link] arco;
//CONSTRUCTOR
public VentanaDibujo() {
setSize(430,300);
initComponents();
}
//INICIALIZA LOS COMPONENTES EN LA VENTANA
private void initComponents() {
panPrincipal = new JPanel();
panSuperior = new JPanel();
lblFigura = new JLabel();
lblRadio = new JLabel();
cboFigura = new JComboBox();
txtRadio = new JTextField();
panControles = new JPanel();
lblColor = new JLabel();
lblCentro = new JLabel();
txtCX = new JTextField();
txtCY = new JTextField();
22
Analista Programador
INGENIA-CAFI
cboColor = new JComboBox();
panBotones = new JPanel();
btnDibujar = new JButton();
btnLimpiar = new JButton();
btnSalir = new JButton();
//LA VENTANA
getContentPane().setLayout(new GridLayout(1, 2));
setTitle("Ventana de Grficos");
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
exitForm(evt);
}
});
//PANEL PRINCIPAL
[Link](new GridLayout(3, 1));
//SUB PANEL SUPERIOR
[Link](null);
[Link](new [Link](255, 255, 204));
[Link]("Figura");
[Link](lblFigura);
[Link](30, 40, 80, 20);
[Link]("Radio");
[Link](lblRadio);
[Link](30, 70, 80, 20);
[Link](new [Link](255, 255, 204));
[Link](new [Link](new String[] { "Circulo",
"Rectangulo" }));
[Link](cboFigura);
[Link](80, 40, 90, 20);
[Link]("20.0");
[Link](txtRadio);
[Link](80, 70, 50, 20);
[Link](panSuperior);
//SUB PANEL De CONTROLES
[Link](null);
[Link](new Color(255, 255, 204));
[Link]("Color");
[Link](lblColor);
[Link](30, 10, 80, 20);
[Link]("Centro");
[Link](lblCentro);
[Link](30, 40, 80, 20);
[Link]("0.0");
[Link](txtCX);
[Link](80, 40, 40, 20);
[Link]("0.0");
[Link](txtCY);
[Link](130, 40, 40, 20);
[Link](new Color(255, 255, 204));
[Link](new DefaultComboBoxModel(new String[] { "Rojo", "Verde", "Azul"
,"Amarillo"}));
[Link](0);
[Link](cboColor);
23
Analista Programador
INGENIA-CAFI
[Link](80, 10, 90, 20);
[Link](panControles);
//SUB PANEL DEL BOTONES
[Link](new FlowLayout([Link], 5, 10));
[Link](new Color(255, 255, 204));
[Link]("Dibujar");
[Link](new ActionListener() {
public void actionPerformed(ActionEvent evt) {
btnDibujarActionPerformed(evt);
}
});
[Link](btnDibujar);
[Link]("Limpiar");
[Link](new ActionListener() {
public void actionPerformed(ActionEvent evt) {
btnLimpiarActionPerformed(evt);
}
});
[Link](btnLimpiar);
[Link]("Salir");
[Link](new ActionListener() {
public void actionPerformed(ActionEvent evt) {
btnSalirActionPerformed(evt);
}
});
[Link](btnSalir);
[Link](panBotones);
getContentPane().add(panPrincipal);
//PANEL DE DIBUJO
panDibujo = new JPanel() {
public void paintComponent(Graphics g) {
Graphics2D g2d = (Graphics2D)g;
[Link](0,0,getWidth(), getHeight());
//Crea el objeto a Dibujar
circulo = new [Link](100.0 + [Link]( [Link]() ),
100.0 + [Link]( [Link]() ),
[Link]( [Link]() ),
[Link]( [Link]() ));
// arco= new [Link](100,100,10,10, 5, 5, 2);
rectangulo=new [Link](100.0 + [Link]( [Link]() ),
100.0 + [Link]( [Link]() ),
[Link]( [Link]() ),
[Link]( [Link]() ));
[Link]( [Link] );
24
Analista Programador
INGENIA-CAFI
//Establece el color de relleno
if ([Link]() == 0)
[Link]( [Link] );
else if ([Link]() == 1)
[Link]( [Link] );
else if ([Link]() == 2)
[Link]( [Link] );
else if ([Link]() == 3)
[Link]( [Link] );
if ([Link]() == 0)
[Link]( circulo );
else if ([Link]() == 1)
[Link](rectangulo);
}
};
[Link](new [Link](new [Link](0, 0, 0), 2, true));
getContentPane().add(panDibujo);
}
private void btnDibujarActionPerformed(ActionEvent evt) {
//Redibuja el componente
[Link]();
}
private void btnLimpiarActionPerformed(ActionEvent evt) {
//Valor de Inicio
[Link]("20.0");
[Link]("0.0");
[Link]("0.0");
[Link](2);
}
private void btnSalirActionPerformed(ActionEvent evt) {
WindowEvent we = new [Link](this,0);
exitForm(we);
}
private void exitForm(WindowEvent evt) {
[Link](0);
}
public static void main(String args[]) {
new VentanaDibujo().show();
}
}
25
Analista Programador
INGENIA-CAFI
// EJEMPLO 18
import [Link].*;
import [Link].*;
import [Link].*;
public class MostrarInformacion extends JFrame {
private JPanel panData;
private JLabel lblCodigo;
private JLabel lblNombre;
private JTextField txtCodigo;
private JTextField txtNombre;
private JPanel panNavegador;
private JButton btnPrimero;
private JButton btnUltimo;
private JButton btnSiguiente;
private JButton btnAnterior;
private JButton btnGrabar;
private JButton btnLimpiar;
public MostrarInformacion() {
// Permite inicializar los componentes visuales
initComponents();
private void initComponents() {
getContentPane().setLayout(new GridLayout(2, 1) );
// Pone el titulo del frame
setTitle( "Ventana SWING" );
// Pone un listener para que responda a cierre de la ventana
addWindowListener( new WindowAdapter() {
public void windowClosing( WindowEvent evt ) {
[Link](0);
}
}
);
26
Analista Programador
INGENIA-CAFI
// Crea el panel para la data
panData = new JPanel( new GridLayout( 2, 2 ) );
lblCodigo = new JLabel( "Cdigo :" );
lblNombre = new JLabel( "Nombre :" );
txtCodigo = new JTextField( "" );
txtNombre = new JTextField( "" );
[Link]( lblCodigo );
[Link]( txtCodigo );
[Link]( lblNombre );
[Link]( txtNombre );
getContentPane().add( panData );
// Crea el panel para el navegador
panNavegador = new JPanel( new GridLayout( 1, 6 ) );
btnPrimero = new JButton( "Primero" );
btnAnterior = new JButton( "Anterior" );
btnSiguiente = new JButton( "Siguiente" );
btnUltimo = new JButton( "Ultimo" );
btnGrabar = new JButton( "Grabar" );
btnLimpiar = new JButton( "Limpiar" );
[Link]( new Color(102, 102, 255) );
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt ) {
onClickNavegador( 1 );
}
}
);
[Link]( new Color(255, 153, 153) );
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt) {
onClickNavegador( 2 );
}
}
);
[Link]( new [Link](0, 204, 204) );
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt ) {
onClickNavegador( 3 );
}
}
);
[Link]( new Color(255, 255, 153) );
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt ) {
onClickNavegador( 4 );
}
}
27
Analista Programador
INGENIA-CAFI
);
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt ) {
onClickNavegador( 5 );
}
}
);
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt ) {
onClickNavegador( 6 );
}
}
);
[Link]( btnPrimero );
[Link]( btnAnterior );
[Link]( btnSiguiente );
[Link]( btnUltimo );
[Link]( btnGrabar );
[Link]( btnLimpiar );
getContentPane().add( panNavegador );
pack();
}
private void onClickNavegador( int accion ) {
try {
switch ( accion ) {
case 1 : [Link]("Primero"); break;
case 2 : [Link]("Anterior"); break;
case 3 : [Link]("Siguiente"); break;
case 4 : [Link]("Ultimo"); break;
case 5 : [Link]("Grabar"); break;
case 6 : [Link]("Limpiar"); break;
}
} catch( Exception e2 ) {
[Link]( [Link]() );
[Link]();
}
}
// El main
public static void main( String args[] ) {
new MostrarInformacion().show();
}
}
28
Analista Programador
INGENIA-CAFI
import [Link].*;
import [Link].*;
import [Link].*;
public class MostrarInformacion extends JFrame {
static int posicionfila ;
private JPanel panData;
private JLabel lblCodigo;
private JLabel lblNombre;
private JTextField txtCodigo;
private JTextField txtNombre;
private JPanel panNavegador;
private JButton btnPrimero;
private JButton btnUltimo;
private JButton btnSiguiente;
private JButton btnAnterior;
private JButton btnGrabar;
private JButton btnLimpiar;
private String [][] listaEmpleados = {
{ "Carmelo Cotn"," 123123"} ,
{"Aitor Menta"," 224224"} ,
{"Juan Sinmiedo"," 316316"},
{"Juana Laloca"," 989889"},
{"Perencejo Berenjeno"," 765765"},
{"Pedro Drope", "678876"} ,
{ "Perico Lospalotes", "006799"},
{ "Juan Tanamera", "565678"},
{ "Monica Levinski", "696996"},
{"Maximum Minimum", "9009"}
};
public MostrarInformacion() {
// Permite inicializar los componentes visuales
initComponents();
}
29
Analista Programador
INGENIA-CAFI
private void initComponents() {
getContentPane().setLayout(new GridLayout(2, 1) );
// Pone el titulo del frame
setTitle( "Ventana SWING" );
// Pone un listener para que responda a cierre de la ventana
addWindowListener( new WindowAdapter() {
public void windowClosing( WindowEvent evt ) {
[Link](0);
}
}
);
// Crea el panel para la data
panData = new JPanel( new GridLayout( 2, 2 ) );
lblCodigo = new JLabel( "Cdigo :" );
lblNombre = new JLabel( "Nombre :" );
txtCodigo = new JTextField( "" );
txtNombre = new JTextField( "" );
[Link]( lblCodigo );
[Link]( txtCodigo );
[Link]( lblNombre );
[Link]( txtNombre );
getContentPane().add( panData );
// Crea el panel para el navegador
panNavegador = new JPanel( new GridLayout( 1, 6 ) );
btnPrimero = new JButton( "Primero" );
btnAnterior = new JButton( "Anterior" );
btnSiguiente = new JButton( "Siguiente" );
btnUltimo = new JButton( "Ultimo" );
btnGrabar = new JButton( "Grabar" );
btnLimpiar = new JButton( "Limpiar" );
[Link]( new Color(102, 102, 255) );
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt ) {
onClickNavegador( 1 );
}
}
);
[Link]( new Color(255, 153, 153) );
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt) {
onClickNavegador( 2 );
}
}
);
30
Analista Programador
INGENIA-CAFI
[Link]( new [Link](0, 204, 204) );
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt ) {
onClickNavegador( 3 );
}
}
);
[Link]( new Color(255, 255, 153) );
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt ) {
onClickNavegador( 4 );
}
}
);
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt ) {
onClickNavegador( 5 );
}
}
);
[Link]( new ActionListener() {
public void actionPerformed( ActionEvent evt ) {
onClickNavegador( 6 );
}
}
);
[Link]( btnPrimero );
[Link]( btnAnterior );
[Link]( btnSiguiente );
[Link]( btnUltimo );
[Link]( btnGrabar );
[Link]( btnLimpiar );
getContentPane().add( panNavegador );
pack();
}
private void onClickNavegador( int accion ) {
try {
String nombre, codigo;
switch ( accion ) {
case 1 : // columna 0 o sino 1
codigo=listaEmpleados[0][1];
[Link](codigo);
nombre=listaEmpleados[0][0];
31
Analista Programador
INGENIA-CAFI
[Link](nombre);
break;
case 2 :
codigo=listaEmpleados[--posicionfila][1];
[Link](codigo);
nombre=listaEmpleados[posicionfila][0];
[Link](nombre);
[Link]("Anterior"); break;
case 3 : [Link]("Siguiente");
codigo=listaEmpleados[++posicionfila][1];
[Link](codigo);
nombre=listaEmpleados[posicionfila][0];
[Link](nombre);
break;
case 4 :
codigo=listaEmpleados[9][1];
[Link](codigo);
nombre=listaEmpleados[9][0];
[Link](nombre);
[Link]("Ultimo"); break;
case 5 : [Link]("Grabar"); break;
case 6 : [Link]("Limpiar");
[Link]("");
[Link]("");
break;
}
} catch( Exception e2 ) {
[Link]( [Link]() );
[Link]();
}
}
// El main
public static void main( String args[] ) {
new MostrarInformacion().show();
}
}
32