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

Java partiendo de Cero - Menú a la Java

50 - Menú a la Java

[editar]
Curso gratis creado por Jorge Bourdette. Extraido de: http://www.publispain.com/supertutoriales
30 de Noviembre de 1999
Bueno, lo primero que vamos a ver son los menús.

La barra de menú está compuesta por menúes, que a su vez están compuestos de ítems (que pueden también ser menúes). Por ejemplo la barra de menú la declaramos con:


MenuBar barraMenu = new MenuBar();

y le agregamos los menúes Archivo y Edit (que habremos creado previamente) con:


barraMenu.add(menuArchivo);
barraMenu.add(menuEdit);

Finalmente la declaramos como EL menú de la ventana (Frame):


setMenuBar(barraMenu);

Cada uno de los menús los declaramos previamente:


Menu menuArchivo = new Menu("&Archivo");
...
Menu menuEdit = new Menu("&Edit");

Noten que el "&" no se visualiza, sino que la letra que le sigue aparece subrayada: Archivo, Edit. Esto permite que se pueda seleccionar el menú tanto con el mouse como con la tecla alt- o meta-, seguida de la tecla subrayada.

A su vez, el método add está presente también en la clase Menú y nos permite agregar los ítems:


mArchivoAbrir = new MenuItem("&Abrir...");
mArchivoGrabar = new MenuItem("&Grabar...");
mArchivoSalir = new MenuItem("&Salir");
menuArchivo.add(mArchivoAbrir);
menuArchivo.add(mArchivoGrabar);
menuArchivo.add(new MenuItem("-"));
menuArchivo.add(mArchivoSalir);

A estos ítems los hemos declarado como globales en la clase para usarlos luego en los eventos. Noten además que


menuArchivo.add(new MenuItem("-"));

no agrega un ítem al menú sino una línea de separación, y no necesitamos crearlo como objeto permanente.

Si miramos la arquitectura de las clases, tanto MenuBar como MenuItem descienden de MenuComponent. A su vez, Menu desciende de MenuItem, por lo que implementa los mismos métodos y vamos a lo que decíamos antes: un menú puede ser un ítem de otro menú, y así sucesivamente tantos subniveles de menús como queramos.

Finalmente, en nuestro manejador de eventos simplemente necesitamos verificar si se eligió un ítem probando si el evento ocurrió sobre el ítem determinado:


if ((e.id
Event.WINDOW_DESTROY)||(e.target
mArchivoSalir)) {
if (editado) System.out.println("Pedir confirmación!\n");
if (enApplet) dispose();
else System.exit(0);
}
if (e.target
mArchivoAbrir) CargarArchivo(); ................
if (e.target
mEditTodo) contenido.selectAll();

En resumen lo que hago es:

  • Si eligió Archivo/Salir (o alt-F4 o lo que sea) salgo del programa
  • Si eligió Archivo/Abrir, llamo al método CargarArchivo
  • Si eligió Archivo/Grabar, llamo al método GrabarArchivo
  • Si eligió Edit/Cortar copio el texto seleccionado a mi clipboard y borro la selección
  • Si eligió Edit/Copiar sólo copio el texto seleccionado a mi clipboard
  • Si eligió Edit/Pegar borro el texto seleccionado e inserto el de mi clipboard
  • Si eligió Edit/Seleccionar_todo marco todo el texto

En todos los casos, si se modifica el texto del contenido lo indico poniendo editado en true; lo mismo si presiono una tecla sobre el área de edición:


if ((e.id
Event.KEY_PRESS)&&(e.target
contenido)) editado=true;
Un par de aclaraciones:

  • getSelectionStart() y getSelectionEnd() marcan los límites del texto seleccionado (si no lo hay, son iguales).
  • getSelectedText() devuelve el texto seleccionado en el TextArea.
  • replaceText() reemplaza una parte (o todo) del TextArea por un String.
  • insertText() inserta un String en un lugar determinado del TextArea.
  • selectAll() selecciona todo el texto del TextArea.
  • MenuItem.enable() habilita un ítem de menú. Lo utilizo para habilitar Edit/Pegar sólo luego de cortar o copiar algo a mi clipboard.
  • En el caso del ítem Archivo/Grabar, lo habilito o no dependiendo de la variable editado, utilizando la otra forma de enable: MenuItem.enable(boolean).
[editar]

84 opiniones

asdf

que quiers decir con Expresion Booleana?




1 2 3 4 5 6 7 ... 17 | siguiente >

Cursos gratis relacionados con 'Java partiendo de Cero'

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.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.