En Java, la forma de pedir datos a través de un control visual difiere de la inserción de datos por consola. Una petición de datos se realiza comúnmente a través de un objeto prefabricado de la clase JTextField. JTextField es uno de los componentes Swing más importantes, permitiendo al usuario introducir un valor de texto en un formato de una sola línea. En este artículo, exploraremos cómo utilizar y configurar un JTextField, así como la manera de limitar el número de caracteres que puede contener.
Importación de Paquetes Necesarios
En este punto, se usa la sentencia import para declarar los paquetes que emplearemos en nuestro programa. Explicar, que un paquete es algo similar a una ruta, donde se encuentran las clases que utilizaremos en el programa. En nuestro caso, JTextField, JPanel y JFrame son clases que pertenecen al paquete javax.swing, así como la clase Color pertenece al paquete java.awt.
Estructura Básica de un Programa con Interfaz Gráfica
La idea de la sentencia Programa extends JFrame es hacer que nuestro programa tenga el comportamiento de un formulario (ventana Windows). Para ello, debemos heredar (extends) de JFrame sus particularidades. JFrame es una clase que tiene todas las características propias de una ventana en Windows.
Uso de Contenedores: JPanel
Aquí, se crean los objetos de los controles visuales que se mostrarán en el formulario. El primer objeto que vemos es jpanel, mencionar, que es un nombre cualquiera y pertenece a la clase JPanel. EL objeto jpanel, es lo que se llama un contenedor, que como su propio nombre indica, va a contener a los demás controles visuales. Es decir, que los controles visuales no se ponen directamente en el formulario, sino en el contenedor, colocado éste encima del formulario.
Si se observa, es una estructura igual a un método, que se inicia con una apertura de llave { y termina con la clausura de la llave }. Entre dichas llaves se procede a dar a los objetos, que representan a los controles visuales, los atributos. También añade los controles visuales al contenedor, además de establecer los atributos del formulario. Por ejemplo, para establecer el color de fondo de un contenedor:
Lea también: IVA 21% Excel
- jpanel.setBackground(Color.lightGray): Al pasarse Color.lightGray como parámetro del método setBackground, le decimos al contenedor, representado en el objeto jpanel, que tome un color de fondo gris suave.
Configuración del JTextField
En este punto, estableceremos a través de propiedades, la apariencia de nuestros controles visuales.
- jtextfield.setBounds(new Rectangle(25, 15, 250, 21)): Cada uno de los valores del parámetro (25,15,250,21) es igual a (x,y,width,height), donde x,y, es la coordenada en la que se ubica el control, dentro del contenedor del formulario.
- jtextfield.setText("Realizada modificación del JTextField").
- jtextfield.setEditable(false): Si esta instrucción, está establecida en true, permite que se pueda escribir sobre el JTextField.
- jpanel.add(jtextfield, null): El método add pertenece a la clase Jpanel. Este método, es usado para añadir un control al contenedor, representado con el objeto jpanel.
Limitación de Caracteres en JTextField
En este artículo, aprenderemos cómo limitar el número de caracteres dentro de un JTextField en Java. PlainDocument es una subclase que extiende la AbstractDocument, un documento simple que no mantiene atributos de caracteres. La estructura de elemento predeterminada para este documento es un mapa de las líneas en el texto.
Se declara una clase llamada "JTextFieldLimit" que extiende PlainDocument, y limit es un campo privado que almacena el máximo de caracteres permitidos. El método super() llama al constructor del PlainDocument padre, y this.limit establece el máximo de caracteres permitidos.
Obtención de Datos de un JTextField
El contenido que introduce un usuario a través de un JTextField, tiene carácter de texto. Para trasladar dicho contenido a una variable, se usa la función o método getText. La función getText, no elimina los espacios en blanco, ni los tabuladores ni los avances de línea.
Otra forma relevante de pedir datos con Java, consiste en el uso de ventanas de dialogo de petición de datos (JOptionPane.showInputDialog). Cuando se invoca la función JOptionPane.showInputDialog, se despliega una ventana independiente, con un mensaje definido de solicitud de datos al usuario, que dispone de una caja de texto asociado para responder y de botones para aceptar o cancelar.
Lea también: Guía IVA reducido
Configuración Final del Formulario y Ejecución
Un formulario tiene una apariencia visual por defecto, por ejemplo el tamaño, el color de fondo, entre otros. En este punto se definen los métodos que se necesitan para realizar las tareas que diseñan el formulario.
- setTitle("Form1").
- setVisible(true).
También es el lugar del método main, que hace que nuestra clase Programa se pueda ejecutar, ya que si dejamos de poner el método main, no podrá ejecutarse, porque dentro de este método, es dónde creamos un objeto del formulario, a través de la instrucción new Programa ().
Lea también: ¿Cómo localizar tus XML del SAT?
