Usar Componentes de Texto Swing

Los componentes de texto muestran algún texto y opcionalmente permiten que el usuario lo edite. Los programas necesitan componentes de texto para tareas dentro delr ango del correcto (introducir una palabra y pulsar Enter) al complejo (mostrar y editar texto con estilos y con imagenes embebidas en un lenguaje asiático). Los paquetes Swing proporcionan cinco componentes de texto y proporcionan clases e interfaces para conseguir los requerimientos más complejos. Sin importar sus diferentes usos capacidades, todos los componentes de texto Swing descienden de la misma superclase, JTextComponent, que proporciona una base poderosa y ampliamente configurable para la manipulación de texto.

Aquí podemos ver una imagen de una aplicación que muestra cada uno de los componentes de texto Swing


Intenta esto:
  1. Compila y ejecuta la aplicación. El código fuente está en TextSamplerDemo.java. También necesitarás TextSamplerDemoHelp.html, Pig.gif, dukeWaveRed.gif, y sound.gif.
  2. Teclea texto en el campo de texto y pulsa Enter. Haz los mismo con el campo Password.
  3. Selecciona y edita un texto en el área de texto y en el panel de texto. Usa las teclas especiales de teclado para cortar, cpiar y pegar texto.
  4. Intenta editar el texto en el editor pane, que se ha hecho no editable con una llamada a setEditable.
  5. Mueve por el panel de texto para encontrar un ejemplo de un componente embebido.

La siguiente figura muestra el árbol de JTextComponent y sitúa cada clase de componente de texto en uno de los tres grupos:

El siguiente párrafo describe los tres grupos de componentes de texto.

Grupo Descripción Clases Swing
Controles de Texto Conocidos simplemente como campos de texto, los controles de texto pueden mostrar y editar sólo una línea de texto y están basados en action como los botones. Se utilizan para obtener una pequeña cantidad de información textual del usuario y toman algunas acciones después de que la entrada se haya completado. JTextField
y su subclase JPasswordField
Plano JTextArea, el único componentes de texto plano de Swing, puede mostrar y editar múltiples líneas de texto. Aqunte un área de texto puede mostrar texto en cualquier fuente, todo el texto está en la misma fuente. Toda la edición de los componentes de texto plano se consigue a través de la manipulación directa del texto con el teclado y el ratón, por esto los componetes de texto plano son más fáciles de configurar y utilizar que los componentes de texto formateado. También, si la longitud del texto es menor de unas pocas páginas, podemos fácilmente utilizar setText y getText para recuperar o modificar el contenido del componente en una simple llamada a método. JTextArea
Formateado Un componente de texto formateado puede mostrar y editar texto usando más una fuente. Algunos componentes de texto formateado permiten embeber imágenes e incluso componentes. Típicamente se tendrán que hacer más programación para usar y configurar componentes de texto formateado, porque muchas de sus funcionalidades no están disponibles a través de la manipulación directa con el ratón y el teclado. Por ejemplo, para soportar la edición del estilo de texto, tendremos que crear un interface de usuario. Una característica manejable y fácil de usar proporcionada por JEditorPane crea 'editor panes' y 'text panes' particularmente poderosos para mostrar información de ayuda no editable: pueden ser cargados con texto formateados desde una URL JEditorPane
y su subclase JTextPane

El programa TextSamplerDemo es extremadamente básico en cómo usa los componentes de texto: simplemente crea cada uno, lo configura y lo añade al marco de su aplicación. Podremos ver cada componente de texto en la siguiente sección que muestra el código usado para crear cada componente, y lo describe brevemente. Estudiando este ejemplo podrás aprender lo básico para crear y utilizar componentes de texto. La mayoría de los programadores y programas tendrán bastante con esta información básica. Sin embargo, esto sólo araña la superficie deL API de texto de Swing. Un iceberg te está esperando. La secciones restantes sobre componentes de texto te ayudarán a navegar por estas aguas.


Ozito