0 votos
por (40 puntos) en Java
Ejemplo:

Suponiendo el cursor sea "|"

En el JTexlField (en ejecución) : "No sé que| todo"

Quisiera sabes que desde un JButton se agrege cualquier text en esa posición, suponiendo que el JButton agregue "OOO"

El JTextField quedaría: "No sé queOOO todo"

Espero su ayuda...

saludos


3 Respuestas

0 votos
por (3.2k puntos)
Hola,

el metodo getCaretPosition() devuelve la posicion donde se encuentra el (|) en el texto, esta posicion es un entero que va desde 0 hasta el ultimo caracter de lo que esta escrito dentro del JTEXTAREA. ademas existe el metodo insert(String s, int pos), que escribe el texto s en la posicion pos, la posicion la obtendremos con el primer metodo mencionado. Bueno te paso de una vez el codigo, para que lo pruebes, espero sea de ayuda :). Saludos

=========================================================

/* Inserta la palabra NUEVO, en la posicion del | dentro de JTextArea

   @author Luis Roberto Perez Rios*/

import javax.swing.JFrame;

import javax.swing.JTextArea;

import javax.swing.JButton;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.BorderLayout;

public class Marco extends JFrame{

    private JTextArea area;

    private JButton boton;

    public Marco(){

        super("Insertar");

        setLayout(new BorderLayout());

        setSize(200,200);

        area = new JTextArea();

        boton = new JButton("Insertar NUEVO");

        boton.addActionListener(new ActionListener(){

            public void actionPerformed(ActionEvent ae){

                area.insert("NUEVO", area.getCaretPosition());

            }

        });

        add(area, BorderLayout.CENTER);

        add(boton, BorderLayout.SOUTH);

    }

    public static void main(String[] arg){

        Marco marco = new Marco();

        marco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        marco.setVisible(true);

    }

}


0 votos
por (3.2k puntos)
Seria ideal que los administradores del foro habiliten de una vez el [CODE], o algun medio para subir el codigo. :)


0 votos
por (240 puntos)
Puedes hacerlo de forma muy sencilla , concatenar (unir fragmentos de código) un string mediante una variable.
en el botón quedaría así ..

"No se que " +JtextField.getText.Trim()+ "todo "

con esta sentencia traemos lo que escribimos en el textField y lo juntamos con la oración, dando como resultado la frase completa

Espero te funcione, saludos

Preguntas relacionadas

0 votos
1 respuesta
0 votos
2 respuestas
0 votos
12 respuestas
0 votos
1 respuesta
Bienvenido a Dudas de Programación, donde puedes hacer preguntas y recibir respuestas sobre los problemas más frecuentes de los lenguajes de programación, frameworks de desarrollo y bases de datos que utilices. Foro de Línea de Código

Categorías

...