Ventanas en Java

download Ventanas en Java

of 4

Transcript of Ventanas en Java

  • Ventanas en Java

    Ventanas en JAVALas ventanas se deben crear desde la clase tipo Frame y el metodo Frame(). La metodolog exige importar las clases que se van a utilizar. Existen dos clases fundamentales: la tecnologia Application Window Toolkit conocida por AWT y la nueva tecnologia definida en el estandar SWING para java avanzado (JAVAX) que exige utilizar herencia de Jframe.Practica #1 La ventana mas elemental en tecnologia AWT.Archivo ventana1.java// Seccion de importacion de clases externasimport java.lang.*;import java.awt.*;import java.awt.event.*;// Seccion creacion de la clase ventana1public class ventana1{

    // Declarar, crear e inicializar// componentes, objetos y variables

    // Creamos el objeto de tipo Frame - la ventanastatic Frame ventana = new Frame( );

    // Metodo principal del programapublic static void main (String args[ ]){

    // Area de definicion de propiedades del objetoventana.setTitle ( "Mi ventanita" );ventana.setSize (200,250);ventana.setVisible (true);

    }}NotasUtilizamos Ctrl + B para terminar la aplicacin Nota: cuando se compila y se ejecuta este ejercicio no tiene evento para salir o terminar, ni siquiera cuando se presiona la X del boton salir. Hay que programar el evento que permita terminar la aplicacin normalmente.Practica #2 Ventana de color azul, 200 por 400 , Practica #2, colocada en coordenadas (Location) 200, 200, que implementa el evento close al boton X para cerrar la ventanaArchivo ventana2.javaimport java.lang.*;import java.awt.*;import java.awt.event.*;

    public class ventana2{

    static Frame ventana = new Frame( );

    public static void main (String args[ ]){

    ventana.setTitle ( "Practica # 2" );ventana.setSize (200,400);ventana.setVisible (true);ventana.setBackground (java.awt.Color.blue);ventana.setLocation(200,200);// Agregamos el codigo a boton X para cerrar la ventana// Mucha atencion, observe como se usan:// WindowListener, WindowAdapter, WindowEvent

    ventana.addWindowListener ( new WindowAdapter ( ) {public void windowClosing (WindowEvent e) { System.exit (0);}} );

    }}

    [email protected] 02/10/aa http://www.dariolara.com

    1

  • Ventanas en Java

    NotasCuando utilizamos la tecnologia avanzada de java (javax) invocamos la librera swing para graficos avanzadosPractica #3 Crear una ventana en metodologia javax y sistema de librera grafica swing Observe que la clase que estamos creando ventana3 hereda de Jframe que es el sistema de marcos de JAVAX

    Archivo ventana3.java

    // VENTANA SENCILLA A PARTIR DE JFRAMEimport java.awt.*;import javax.swing.*;// CLASE PRINCIPAL DEL PROGRAMA (hereda de JFrame)public class ventana3 extends JFrame {

    // MTODO PRINCIPAL DE ENTRADA AL PROGRAMA public static void main(String args[])

    { // crear y configurar la ventana llamada marco JFrame marco = new JFrame("Ventana desde JFrame"); // accin por defecto al cerrar la ventana: salir del programa marco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel panel1 = new JPanel(); // para aadir un panel a un JFrame marco.getContentPane().add(panel1); // mostrar la ventana marco.setSize(340,240); // dimensiones marco.setLocation(200,200); // posicin marco.setResizable(false); // no permite redimensionar el tamao marco.setVisible(true); // mostrarla

    } }

    Practica #4 Ventana que hereda de Jframe y utiliza constructor y llamada a - this.Archivo ventana4.javaimport java.awt.*;import javax.swing.*;// CLASE PRINCIPAL DEL PROGRAMA (hereda de JFrame)public class ventana4 extends JFrame {

    // variables a nivel de claseprivate JPanel panel1;// MTODO DE ENTRADA AL PROGRAMApublic static void main(String args[]) {

    // Creamos una instancia de la clase principal new ventana4();

    } // MTODO CONSTRUCTOR QUE CREA Y MUESTRA LA INTERFAZ// Ventana_sencilla hereda las caractersticas de JFramepublic ventana4() {

    /* la variable especial this se usa en mtodos de instancia* para hacer referencia al objeto que contiene el mtodo,* aqu equivale a JFrame */// accin por defecto al cerrar la ventana: salir del programa

    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // la ventana this.setTitle("Ventana desde JFrame"); this.setSize(340, 240); this.setLocation(200,200);

    [email protected] 02/10/aa http://www.dariolara.com

    2

  • Ventanas en Java

    this.setResizable(false); this.setVisible(true);

    }}

    Practica #5: Una ventana con objetos (etiqueta y boton) evento salir// VENTANA SENCILLA A PARTIR DE UN JFRAMEimport java.awt.*;import java.awt.event.*;import javax.swing.*;// CLASE PRINCIPAL DEL PROGRAMA (hereda de JFrame)public class ventana5 extends JFrame {

    // variables a nivel de clase private JPanel panel1; private JButton bt; private JLabel label; // MTODO DE ENTRADA AL PROGRAMA public static void main(String args[]) {

    // instancia de la clase principal new ventana5();

    } // MTODO CONSTRUCTOR QUE CREA Y MUESTRA LA INTERFAZ // Ventana_sencilla hereda las caractersticas de JFrame public ventana5() {

    /* la variable especial this se usa en mtodos de instancia* para hacer referencia al objeto que contiene al mtodo,* aqu equivale a JFrame */// accin por defecto al cerrar la ventana: salir del programa

    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    /* panel contenido en la ventana, BorderLayout es uno * de los tipos de disposicin de los paneles * tiene 5 zonas: NORTH, WEST, CENTER, EAST, SOUTH */

    panel1 = new JPanel(new BorderLayout());// etiqueta y botn contenidos en el pane// etiqueta con texto alineado al centro en horizontal

    label = new JLabel("Ventana con etiqueta y botn", SwingConstants.CENTER);Font letra1 = new Font("Verdana", Font.PLAIN, 18);label.setFont(letra1); label.setForeground(Color.blue); bt = new JButton("Salir"); Font letra2 = new Font("Verdana", Font.BOLD, 12);

    bt.setFont(letra2);/* asociar el botn con una instancia de la clase Cerrar

    * para configurar la accin al pulsar en el botn */bt.addActionListener (new Cerrar());

    /* colocar los componentes en los paneles; * para aadir un componente a un JFrame es preferible

    * ventana.getContentPane().add(panel1);* en lugar de* ventana.add(panel1); */

    this.getContentPane().add(panel1); panel1.add(label, BorderLayout.CENTER); panel1.add(bt, BorderLayout.SOUTH); // la ventana this.setTitle("Ventana desde JFrame"); this.setSize(340,240); this.setLocation(200,200);

    [email protected] 02/10/aa http://www.dariolara.com

    3

  • Ventanas en Java

    this.setResizable(false); this.setVisible(true);

    }

    //CERRAR EL PROGRAMA AL PULSAR EL BOTN bt //el botn bt se asocia con una instancia de la clase Cerrar //en la clase Cerrar estn definidos el evento y la accin que se va a realizar

    class Cerrar implements ActionListener { public void actionPerformed(ActionEvent evt) { System.exit(0); } }

    }

    Practicas propuestas1. Cree una ventana sencilla en tecnologia AWT, de 350 x 400 de color verde y colocada en 50, 50

    2. Agregue botones y etiquetas a una ventana en tecnologia SWING, cambiando color, tamao, ubicacin en la pantalla, etc.

    3. Investigar otros eventos y aplicarlos

    [email protected] 02/10/aa http://www.dariolara.com

    4