Capitulos de este wiki
  1. 1 JAVA DESDE CERO
  2. 2 Qué es Java
  3. 3 Lenguaje de Objetos
  4. 4 Independiente de la plataforma
  5. 5 Algunas características
  6. 6 El Java Development Kit
  7. 7 EMPECEMOS DE UNA VEZ!
  8. 8 Javascript
  9. 9 Al fin. Java!
  10. 11 Estructura de una clase
  11. 12 ESTRUCTURA DE CLASES
  12. 13 Declaración de la clase
  13. 14 El cuerpo de la clase
  14. 15 EL CUERPO DE LOS MÉTODOS
  15. 16 Declaración de variables locales
  16. 17 Asignaciones a variables
  17. 18 Operaciones matematicas
  18. 19 Llamadas a métodos
  19. 20 LAS ESTRUCTURAS DE CONTROL
  20. 21 if.[else]
  21. 22 Switch.case.brake.default
  22. 23 While
  23. 24 Do.while
  24. 25 For
  25. 26 Break y continue
  26. 27 Otras...
  27. 28 HAGAMOS ALGO...
  28. 29 La clase Complejo
  29. 30 Algo sobre los métodos
  30. 31 JAVA A TRAVÉS DE LA VENTANA
  31. 32 Nuestra primera ventana
  32. 33 Un poco de detalle
  33. 34 Y los eventos...
  34. 35 UNA VENTANA CON VIDA
  35. 36 Viajando con Java
  36. 37 Preparando listas
  37. 38 Agregando fechas
  38. 39 Juntando todo hasta aquí
  39. 40 COMPLETANDO LA VENTANA
  40. 41 Un poquito de actividad
  41. 42 Y para terminar...
  42. 43 Finale con tutto
  43. 44 UN PARÉNTESIS DE ENTRADA/SALIDA
  44. 45 Primera Lectura
  45. 46 Capturando excepciones
  46. 47 Los applets y los archivos
  47. 48 Nuestro modesto "Editor"
  48. 49 VOLVIENDO AL AWT
  49. 50 Menú a la Java
  50. 51 Dialogos
  51. 52 DIBUJAVA
  52. 53 Canvas en acción
  53. 54 El applet-container
  54. 55 Nuestro Canvas a medida
  55. 56 DIBUJAVA II
  56. 57 Vectores en acción
  57. 58 Flicker molesto!
  58. 59 Anímate!
  59. 60 JAVA EN HEBRAS
  60. 61 Los pasos basicos
  61. 62 Reunión de amigos
  62. 63 Creando Threads
  63. 64 Y los applets...?
  64. 65 LA LIEBRE Y LA TORTUGA (Y EL GUEPARDO)
  65. 66 Sincronicemos los relojes
  66. 67 Mas sincronización
  67. 68 MULTIMEDIA!
  68. 69 Parametrizando un applet
  69. 70 PASEANDO POR LA RED
  70. 71 Los Sockets
  71. 72 Un servidor atento
  72. 73 El cliente satisfecho
Temas relacionados:
  • Programación web
  • Búsquedas relacionadas:
  • Break java
  • Interfaz grafica en java
  • Canvas en java
  • Interfaz grafica java
  • Java interfaz grafica
  • Clases java
  • Estructura gramatical lenguaje programacion java
  • If else java

    Java partiendo de Cero - Un poco de detalle

    33 - Un poco de detalle


    Curso gratis creado por Jorge Bourdette . Extraido de: http://www.publispain.com/supertutoriales
    26 Agosto 2005
    < anterior | 1 .. 31 32 33 34 35 .. 72 | siguiente >
    La clase desciende de Frame (o sea que será una ventana con borde, aunque no le vamos a poner menú).

    Vamos a usar el flag inAnApplet para saber si se arrancó como applet o como aplicación standalone (hay que cerrarla en manera diferente en cada caso)

    public class Ejemplo7 extends Frame {
    boolean inAnApplet = true;

    Si se llama como aplicación standalone, lo primero que se ejecuta es main(...); en este caso la aplicación crea una instancia de Ejemplo7 (ejecutando el constructor Ejemplo7() a través de //new//), define que no es un applet, y llama a tres métodos de la "abuela" window:

    ~- setTitle que define cuál va a ser el título que aparece en la ventana
    ~- pack que dimensiona los elementos que componen la ventana a su tamaño preferido
    ~- show que muestra la ventana

    public static void main(String args[]) {
    Ejemplo7 window = new Ejemplo7();
    window.inAnApplet = false;
    window.setTitle("Ejemplo");
    window.pack();
    window.show();
    }

    Ojo! No confundir el objeto (instancia) window con la clase Window!

    Si se carga como applet, entonces se ejecuta el constructor Ejemplo7() como en el caso anterior:


    public Ejemplo7() {
    Panel panelAlto = new Panel();
    panelAlto.add("West", new Label("Cartel", Label.CENTER));
    panelAlto.add("East", new TextArea("Area de texto", 5, 20));
    add("North", panelAlto);

    Panel panelBajo = new Panel();
    panelBajo.add(new TextField("Campo de Texto"));
    panelBajo.add(new Button("Botón"));
    add("South",panelBajo);
    }Este constructor define dos paneles que forman el contenido de la ventana
    (panelAlto y panelBajo), los llena con un par de componentes y los pone
    dentro de la ventana (recordar que Ejemplo7 es una ventana!).

    Para verlo más claro, se crea el panel (o espacio para contener objetos) con:

    Panel panelAlto = new Panel();

    Se agregan componentes al panel con el método add:

    panelAlto.add("West", new Label("Cartel", Label.CENTER));
    panelAlto.add("East", new TextArea("Area de texto", 5, 20));

    Se agregan el panel dentro de nuestro objeto con:

    add("North", panelAlto);

    que equivale a:

    this.add("North", panelAlto);

    lo que se puede ver (aunque es inválido porque la clase no es static) como:

    Ejemplo7.add("North", panelAlto);

    Como nuestra clase Ejemplo7 desciende de Frame, ésta de Window, y ésta de Container, el método //add// lo está heredando de... su bisabuela! Por otra parte, Panel es hija de Container, y usa el mismo método para agregar sus componentes. Interesante, no? Veamos la estructura:


    Object
    Component
    Container --+-- Panel
    |
    +-- Window
    Frame
    Ejemplo7

    Noten que hemos usado dos métodos add con diferente //signature//:

    panelAlto.add("West", new Label("Cartel", Label.CENTER));
    ..........
    panelBajo.add(new Button("Botón"));

    El método add(Component) agrega un componente al final; el método add(String,Component) lo agrega en un lugar especificado por una palabra que depende del //LayoutManager//, el objeto que se encarga de ordenar los componentes dentro del contenedor.

    //LayoutManager// es una //interface//, y como tal debe implementarse a través de objetos no abstractos de los que hay varios predefinidos en la librería java.awt: BorderLayout, CardLayout, FlowLayout, GridBagLayout y GridLayout.

    El Layout por defecto es BorderLayout, que define en el contenedor las áreas "North", "South", "West", "East" y "Center" y es que usamos aquí. CardLayout permite "apilar" los componentes como cartas y ver uno por vez, FlowLayout los ordena de izquierda a derecha como un texto, GridLayout los ordena en una cuadrícula donde cada componente tiene un tamaño fijo y GridBagLayout los pone en una cuadrícula pero cada uno puede tener el tamaño deseado.

    Noten que no hace falta llamar, en el caso del applet, a Pack() y Show().
    < anterior | 1 .. 31 32 33 34 35 .. 72 | siguiente >

    Autor y licencia de 'Java partiendo de Cero'


    Curso gratis de Jorge Bourdette . Extraido de: http://www.publispain.com/supertutoriales CopyLeft
    Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.