Introducción a JTextField en Java

Cuando hablamos del lenguaje de programación Java, hay dos segmentos asociados, uno es Core Java y el otro es Advanced Java. Las características como los conceptos de OOP como el polimorfismo, la abstracción, la encapsulación, etc. y otras características como el manejo de excepciones, colecciones, applets, etc. están asociadas con Core Java, mientras que características como Swing, Hibernate, Struts, etc. forman el componente de Java avanzado. JTextField también es una característica de Java Swing, que permite la edición de una sola línea del texto. La intención principal es mantener intacta su estabilidad y compatibilidad con java.awt.TextField y forma parte integral del paquete javax.swing. Hereda la clase JTextComponent y utiliza la interfaz SwingConstant.

Estudiemos un poco sobre los diversos constructores presentes en JTextField:

Los constructores que pertenecen a esta clase son:

  1. JTextField (): estos son los constructores responsables de la creación del nuevo TextField.
  2. JTextField (int columnas): como su nombre indica, las columnas de parámetros se utilizan para representar los números de columna en un nuevo TextField vacío.
  3. JTextField (texto de cadena): el texto de cadena de parámetro se utiliza para representar una cadena dada inicializada con un nuevo campo de texto vacío.
  4. JTextField (texto de cadena, columnas int): este es el constructor que se utiliza para crear un campo de texto vacío con la cadena proporcionada junto con el número especificado de columnas.
  5. JTextField (documento de documento, texto de cadena, columnas int): se utiliza para hacer uso del modelo de almacenamiento dado junto con el número especificado de columnas.

Métodos de JTextField

Ahora leamos sobre algunos de los principales métodos en JTextField en java.

  1. setColumns (int n): como su nombre indica, este método se usa para establecer el número especificado de columnas dentro de un campo de texto.
  2. setFont (Fuente f): esta función se utiliza para mostrar y establecer la fuente del campo de texto que se muestra.
  3. addActionListener (ActionListener I): este método se utiliza para establecer el oyente de acción en el campo de texto.
  4. Int getColumns (): este método se utiliza para obtener los números de columna en el campo de texto.

Hacer uso de campos de texto

El objetivo principal de un campo de texto es establecer un nivel básico de control de texto con el que el usuario pueda ingresar un valor de texto pequeño. Cada vez que el usuario confirma una entrada de texto, lo que generalmente se hace presionando la tecla Intro, se puede ver el campo de texto disparando un evento de acción. Si debe obtener varias líneas de entradas del usuario, es aconsejable utilizar el área de texto.

Veamos un código para la creación básica del campo de texto y su uso.

public class TDemo extends JPanel implements ActionListener (
public JtField tField;
public JtArea tArea;
public TDemo() (
super(new Layout());
tField = new JtField(20);
tField.addActionListener(this);
tArea = new JtArea(5, 20);
tArea.setEditable(false);
JScrollPane scrollPane = new JScrollPane(tArea);
Constraints c = new Constraints();
c.gridwidth = Constraints.REMAINDER;
c.fill = Constraints.HORIZONTAL;
add(tField, c);
c.fill = Constraints.BOTH;
c.wx = 1.0;
c.wy = 1.0;
add(scrollPane, c);
)
public void act(ActionEvent evt) (
String txt = tField.getText();
tArea.append(txt);
tField.selectAll();
tArea.setCaretPosition(tArea.getDocument().getLength());
)
private static void GUI() (
JFrame frame = new JFrame("TDemo");
frame.add(new TDemo());
frame.pack();
frame.setVisible(true);
)
public static void main(String() args) throws IOException(
javax.swing.SwingUtilities.invokeLater(new Runnable() (
public void run() (
GUI();
)
));
)
)

Swing API hace uso de varias clases que incluyen los campos de texto o son las variedades de los campos de texto.

  1. JFormattedTextField: una subclase de JTextField que le otorga la autoridad para especificar el conjunto de caracteres legales que el usuario puede acceder.
  2. JPasswordField: una subclase que no se relaciona con mostrar caracteres escritos por el usuario.
  3. JComboBox: este cuadro se puede editar y también proporciona un menú de varios conjuntos de cadenas para elegir.
  4. JSpinner: JSpinner se usa para combinar un campo de texto formateado junto con un par de botones pequeños que permiten al usuario elegir entre el valor disponible anterior y el siguiente.

Ejemplos de JTextField en Java

Veamos ahora algunos de los ejemplos.

Ejemplo 1

import javax.swing.*;
import java.awt.event.*;
class Jteobjxt exteobjnds JFrame implements ActionListeobjner (
static JLabel l;
static JButton b;
static JFrame f;
static JTField t;
// creating default constructor for Jteobjxt example
Jteobjxt()
(
)
// public static void main class
public static void main(String() args)
(
// new frame creation
f = new JFrame("JTField");
// new label creation
l = new JLabel("");
// new button creation
b = new JButton("submit button createobjd");
// new object creation
Jteobjxt teobj = new Jteobjxt();
// adding addActionListeobjner to my created button
b.addActionListeobjner(teobj);
// creating a column of 16 numbers
t = new JTField(16);
// panel creation
JPanel p = new JPanel();
// adding Jtextfield and buttons to panel
p.add(t);
p.add(b);
p.add(l);
// adding panel to frame created
f.add(p);
// setting the size of frame created earlier
f.setSize(300, 300);
f.show();
)
// checking whether the button is pressed or not
public actionPerformed(ActionEvent e)
(String s1 = e.getActionCommand();
if (s1.equalsIgnoreCase("submit")) (
l.setJteobjxt(t.getJteobjxt());
// set the field object as the blank value
t.setJteobjxt(" ");
)
)
)

Salida:

Ejemplo # 2

import javax.swing.*;
import java.io.*;
class TextEg
(
public static void main(String args()) throws IOException
(
JFrame f= new JFrame("Example of TextField ");
//variable declaration
JTextField t12, t22;
t12=new JTextField("Welcome!");
t12.setBounds(10, 100, 100, 30);
//declaring new example
t22=new JTextField("new example");
//setting bounds
t22.setBounds(10, 150, 100, 30);
//adding into frames
f.add(t12); f.add(t22);
f.setSize(200, 200);
f.setVisible(true);
)
)

Salida:

Ejemplo # 3

import javax.swing.*;
import java.io.*;
import java.awt.event.*;
public class Teg implements ActionListener(
JTextField tf12, tf22, tf32;
JButton b12, b22;
Teg()(
JFrame f2= new JFrame();
tf12=new JTextField();
tf12.setBounds(10, 50, 100, 20);
tf22=new JTextField();
tf22.setBounds(10, 50, 100, 20);
tf32=new JTextField();
tf32.setBounds(10, 50, 100, 20);
//setting the setEditable as False
tf32.setEditable(false);
//addition operator
b12=new JButton("+");
b12.setBounds(10, 50, 100, 20);
//subtraction operator
b22=new JButton("-");
b22.setBounds(10, 50, 100, 20);
//this is used to refer to the current value
b12.addActionListener(this);
b22.addActionListener(this);
//addition into all frames
f2.add(tf12);f2.add(tf22);f2.add(tf32);f2.add(b12);f2.add(b22);
f2.setSize(100, 200);
//setting layout (default) to null
f2.setLayout(null);
f2.setVisible(true);
)
public void actionPerformed(ActionEvent e) (
String s12=tf12.getText();
String s22=tf22.getText();
int a2=Integer.parseInt(s12);
int b2=Integer.parseInt(s22);
int c2=0;
//conditional statement start
if(e.getSource()==b12)(
c2=a2+b2; //addition
)else if(e.getSource()==b22)(
c2=a2-b2; //subtraction
)
//printing final result
String res=String.valueOf(c2);
tf32.setText(res);
)
public static void main(String() args) (
new Teg();
) )

Salida:

Artículos recomendados

Esta es una guía de JTextField en Java. Aquí discutimos los métodos y ejemplos de JTextField en Java con salidas y también el uso de TextFields. También puede echar un vistazo a los siguientes artículos para obtener más información:

  1. Variables en Java
  2. Modificadores de acceso en Java
  3. Declaración de caso en Java
  4. Paquetes Java
  5. ¿Cómo crear un panel en Java?
  6. Descripción general de JScrollPane en Java
  7. Modificadores de acceso en PHP
  8. Polimorfismo en Java
  9. JLabel en Java
  10. Mapeo de Hibernate | Tipos en el archivo XML
  11. Applets en Java | Funcionamiento de Applets Java