.

.

martes, 29 de noviembre de 2016

Swing - JTextArea (JAVA-ECLIPSE)

                                Swing - JTextArea  

El control de tipo JTextArea permite ingresar múltiples líneas, a diferencia del control de tipo JTextField.

Problema 1:
Confeccionar un programa que permita ingresar en un control de tipo JTextArea una carta. Luego al presionar un botón mostrar un mensaje si la carta contiene el String "argentina".

Programa:

import javax.swing.*; import java.awt.event.*;
public class Formulario extends JFrame implements ActionListener{
    private JScrollPane scrollpane1;     private JTextArea textarea1;     private JButton boton1;     public Formulario() {         setLayout(null);         textarea1=new JTextArea();
        scrollpane1=new JScrollPane(textarea1);         scrollpane1.setBounds(10,10,300,200);         add(scrollpane1);
        boton1=new JButton("Verificar");         boton1.setBounds(10,260,100,30);         add(boton1);
        boton1.addActionListener(this);
    }     
    public void actionPerformed(ActionEvent e) {         if (e.getSource()==boton1) {
            String texto=textarea1.getText();             if (texto.indexOf("argentina")!=-1) {                 setTitle("Si contiene el texto
\"argentina\"");             } else {
                setTitle("No contiene el texto
\"argentina\"");            
            }
        }
    }     
   public static void main(String[] ar) {         Formulario formulario1=new Formulario();         formulario1.setBounds(0,0,400,380);         formulario1.setVisible(true);
    }        
}

Cuando se presiona el botón se ejecuta el método actionPerformed y procedemos a extraer el contenido del control TextArea a través del método getText:

            String texto=textarea1.getText();

Luego mediante el método indexOf de la clase String verificamos si el String "argentina" está contenido en la variable texto:

            if (texto.indexOf("argentina")!=-1) {
                setTitle("Si contiene el texto \"argentina\"");
            } else {
                setTitle("No contiene el texto \"argentina\"");            
            }

Si queremos introducir una comilla doble dentro de un String de Java debemos antecederle la barra invertida (luego dicho caracter no se lo considera parte del String):


setTitle("Si contiene el texto \"argentina\"");

No hay comentarios:

Publicar un comentario