Foro de elhacker.net

Programación => Java => Mensaje iniciado por: omar_cdg en 2 Agosto 2015, 01:34 am



Título: Mi método buscarTexto() falla (JTextArea, pequeño editor de texto)
Publicado por: omar_cdg en 2 Agosto 2015, 01:34 am
Hola amigos, estoy terminando un pequeño editor de textos, pero probandolo me di cuenta que el metodo para buscar texto dentro del editor falla. No me es posible encontrar la falla en el método. Es como si anduviera cuando quiere jaja.
cuando selecciono texto con el mouse, o sea que pinto el texto completeo que se encuentra en el JTextArea del editor,es seguro que encuentra el texto buscado.
En cambio, si no selecciono texto (si no pinto texto con el mouse), a veces encuentra la palabra budcada y aveces no. Agradezco la ayuda que puedan brindarme.
Este es el metodo

Código
  1. private void buscarTexto(){
  2.        try{
  3.            String buscado=JOptionPane.showInputDialog(gui.texto,"Buscar","");
  4.            String todoElTexto=gui.texto.getText();
  5.            Caret seleccion=gui.texto.getCaret();
  6.            int posicionInicial=0;
  7.            if(seleccion.getDot()!= seleccion.getMark()){
  8.                posicionInicial=seleccion.getDot();
  9.            }
  10.            int posicion=todoElTexto.indexOf(buscado, posicionInicial);
  11.            gui.texto.setCaretPosition(posicion);
  12.            gui.texto.moveCaretPosition(posicion+buscado.length());
  13.        }
  14.        catch(NullPointerException e){
  15.            JOptionPane.showMessageDialog(gui.texto, "Texto no encontrado");
  16.        }catch(IllegalArgumentException e){
  17.            JOptionPane.showMessageDialog(gui.texto, "Texto no encontrado");
  18.        }
  19.    /code]