Suchen und Ersetzen bei JTextAray

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo,
ich versuche die Funktion (suchen und ersetzen) für eine JTextArea zu programmieren. Es funktioniert aber nichts. Wenn ich auf dem Button suchen drucke wird nur das erste Wort, das das suchende Wort enthält selektiert und nix mehr. Es sollte aber wie ein normaler Editor bei jedem Klick auf dem Button suchen das nächste Wort selektiert wird.
Danke im Voraus


Code:
public class myProgramm extends JFrame
{
 public JTextArea PCode = new JTextArea(2, 1);	
 public JTextField sucheWort = new JTextField();	
 public JTextField ersetzeWort = new JTextField();	
 public JButton suchen= new JButton("suchen");	
// public JButton ersetzen= new JButton("ersetzen");

 public myProgramm ()
 	 {	
	//Hier wird das Frame zusammen gebastelt
	.
	.
	.
	.
	 suchen.addMouseListener(new suchen_mouseAdapter(this));
         }
    public void Wortsuchen()
  {
	 String Text = this.PCode.getText();	
  	 String suchen= this.sucheWort.getText();
 	 //String ersetzen = this.ersetzeWort.getText();
              for (int i =0; i<Text.length();i++)
               {
               int index = Text.indexOf(suchen,i);
               this.PCode.select(index, index + suchen.length());

             }

   }
}
class suchen_mouseAdapter extends MouseAdapter
{
 myprogramm wnd;

 protected suchen_mouseAdapter(myprogramm wnd)
 {
   this.wnd = wnd;
 }
  public void mouseReleased(MouseEvent event)
   {
      wnd.Wortsuchen(); 
   }
}
 

Leroy42

Top Contributor
Anonymous hat gesagt.:
Es sollte aber wie ein normaler Editor bei jedem Klick auf dem Button suchen das nächste Wort selektiert wird.

Naja, dann mußt du dir eben ausserhalb der Suchroutine die Position,
ab der du beim nächsten Mal suchen musst, in einer Instanzvariablen
merken und dafür sorgen, dass diese auch irgendwie wieder auf "0"
gesetzt werden kann.
 

phyrexianer

Bekanntes Mitglied
genau lege dir eine private Variable an
Code:
 private int searchIndex;
nachdem du das wort gefunden hast setzt du dann den "searchIndex = searchWordIndex + searchWord.lenght()" und beim erneuten drücken auf dem "Suchen" button musst du dann halt erst ab dem "searchIndex" loslegen.

und so wie es leroy42 geschreiben hat, vergesse den nicht auf 0 zu setzen.....
 
G

Guest

Gast
Es hat geklappt danke.
Jetzt noch eine andere Frage. Das myProgramm ist von JFrame abgeleitet(da schreibe ich in JTextAray mein Text) und ich habe ein anderes Fenster Framesuchen, das von JDialog abgeleitet ist(da habe ich die JTextField für das Suchen und Ersetze) programmieret.
Wenn die beiden Fenster gestartet sind denn steht Framesuchen über myProgramm, wenn ich myProgramm anklicke verschwindet Framesuchen. Es wäre schön genau wie beim normalen Editor, dass beide Fenster übereinander bleiben und man beide bedienen könnte, es das machbar??
Vielen Dank

Code:
public class myProgramm extends JFrame 
{ 
public JTextArea PCode = new JTextArea(2, 1);    

public JButton suchen= new JButton("suchen");    
// public JButton ersetzen= new JButton("ersetzen"); 

public myProgramm () 
    {    
   //Hier wird das Frame zusammen gebastelt 
   . 
   . 
   . 
   . 
    suchen.addMouseListener(new suchen_mouseAdapter(this)); 
         } 

   } 
} 
class suchen_mouseAdapter extends MouseAdapter 
{ 
myprogramm wnd; 

protected suchen_mouseAdapter(myprogramm wnd) 
{ 
   this.wnd = wnd; 
} 
  public void mouseReleased(MouseEvent event) 
   { 
Framesuchen frame = new Framesuchen();
   } 
}


public class Framesuchen extends JDialog
{
public JTextField sucheWort = new JTextField();    
public JTextField ersetzeWort = new JTextField();   
public JButton suchen= new JButton("suchen");  
myProgramm frame; 
public Framesuchen (myProgramm frame) 
    {    
 super(frame);
             this.setModal(false);
   //Hier wird das Fenster zusammen gebastelt 
   . 
   . 
   . 
   .
 
   Framesuchen.addMouseListener(new Framesuchen _mouseAdapter(this)); 
         } 
    public void Wortsuchen() 
  { 
    String Text = frame.PCode.getText();    
      String suchen= this.sucheWort.getText(); 
    //String ersetzen = this.ersetzeWort.getText(); 
              for (int i =0; i<Text.length();i++) 
               { 
               int index = Text.indexOf(suchen,i); 
               this.PCode.select(index, index + suchen.length()); 

             } 

   } 
} 
class Framesuchen _mouseAdapter extends MouseAdapter 
{ 
Framesuchen wnd; 

protected Framesuchen _mouseAdapter(Framesuchen wnd) 
{ 
   this.wnd = wnd; 
} 
  public void mouseReleased(MouseEvent event) 
   { 
      wnd.Wortsuchen(); 
   } 
}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Text suchen und ersetzen im Word Dokument Allgemeine Java-Themen 3
M Suchen und Ersetzen? Allgemeine Java-Themen 4
V Lib für Strings suchen und ersetzen (erweitert) Allgemeine Java-Themen 3
R Datum in *.txt suchen und ersetzen Allgemeine Java-Themen 2
T Methoden Farbe auf Screenshot suchen Allgemeine Java-Themen 2
L 2 Dimensionale ListArray Abfrage nach einem Wert suchen Allgemeine Java-Themen 5
LimDul Suchen in Stringlisten Allgemeine Java-Themen 4
J Suchen von einer Scannereingabe in einem HashSet Allgemeine Java-Themen 1
ralfb1105 Blöcke aus Datei filtern/suchen und in neue Datei schreiben Allgemeine Java-Themen 10
K Bild in einem anderen Bild suchen Allgemeine Java-Themen 12
J Programm zum Suchen eines Wortes im Dateisystem Allgemeine Java-Themen 4
H Collections Tupel suchen Allgemeine Java-Themen 20
Meeresgott Erste Schritte Sourcetree - Git | Suchen eines Commits Allgemeine Java-Themen 2
C Zeilen-"Vektor" aus Excel-Tabelle suchen Allgemeine Java-Themen 0
I Muster in Array suchen Allgemeine Java-Themen 10
K Auf einer Website nach einem String suchen Allgemeine Java-Themen 5
thet1983 nach teilen eines Dateinamens suchen Allgemeine Java-Themen 6
W Arraylist Text Suchen und Datei löschen Allgemeine Java-Themen 5
M lucene suchen/löschen/hinzufügen Allgemeine Java-Themen 4
W Sortierte Listen - Methode suchen Allgemeine Java-Themen 17
Iron Monkey Mit Regex nach Beträge suchen Allgemeine Java-Themen 4
R In einem Byte-Array nach einer gewissen Zahlenfolge suchen Allgemeine Java-Themen 7
M Objekt aus Liste in Liste suchen/löschen Allgemeine Java-Themen 6
E nach dem Ordner suchen, wo .jar datei sich befindet Allgemeine Java-Themen 17
E Objekte in einer Liste suchen. Allgemeine Java-Themen 4
S Doppelte Werte in Listen,Vectoren etc suchen Allgemeine Java-Themen 2
S Nach Fehler und schlechtem Programmierstiel suchen: Allgemeine Java-Themen 5
V Über Java in einem Forum einloggen/ suchen? Allgemeine Java-Themen 10
G bestimmte Files suchen Allgemeine Java-Themen 2
ARadauer Fenster suchen und Verschieben Allgemeine Java-Themen 6
G Wort am Bildschirm -- Koordinaten suchen Allgemeine Java-Themen 2
M Sonderzeichen in String suchen Allgemeine Java-Themen 4
D in class-Dateien nach variablen suchen! Allgemeine Java-Themen 5
P JTable suchen in einer Spalte Allgemeine Java-Themen 24
N Methodenverwendung in Quelltext oder Class-Objekt suchen? Allgemeine Java-Themen 14
V String in String suchen mit Wildcard? Allgemeine Java-Themen 8
M String aus array mit Objekten suchen Allgemeine Java-Themen 26
G Nach Ordners suchen? Allgemeine Java-Themen 8
E in Pfad suchen Allgemeine Java-Themen 5
C File suchen Allgemeine Java-Themen 3
D File suchen Allgemeine Java-Themen 4
C 5000-6000 Dateien nach Textblocken suchen Allgemeine Java-Themen 22
N Dateien mit einer bestimmten Erweiterung suchen Allgemeine Java-Themen 9
V Suchen in grosser Datei (100+ MB) Allgemeine Java-Themen 16
T Nach Programmen suchen Allgemeine Java-Themen 4
W nach String mit Doppelcharactern suchen Allgemeine Java-Themen 8
C Wie kann man im InputStream nach einer Zeichenkette suchen? Allgemeine Java-Themen 4
G in Jtree suchen Allgemeine Java-Themen 2
F mit getResourceAsStream () Datei im Classpath suchen Allgemeine Java-Themen 15
R Windows-XP-Suchfunktion: Nach Text in Java-Dateien suchen Allgemeine Java-Themen 9
M Dateien suchen und finden Allgemeine Java-Themen 6
N Suchen in InputStream/ByteArrayOutputStream Allgemeine Java-Themen 11
E Ersetzen eines Bildes in der Kopfzeile eines Word-Docx-Dokuments mit Apache POI XWPF Allgemeine Java-Themen 0
Noahscript Aus einem byte Array Steuerungszeichen und Code bekommen und ersetzen Allgemeine Java-Themen 3
I Apache POI Bild in Word ersetzen Allgemeine Java-Themen 15
Drachenbauer Wie kann ich das Wort "concrete" in einem String durch ein anderes Wort ersetzen lassen? Allgemeine Java-Themen 5
I Buchstabe durch seinen Nachfolger ersetzen Allgemeine Java-Themen 29
J Reflection Aufruf: .class durch .dll ersetzen Allgemeine Java-Themen 4
X public Getter ersetzen (Reflection?!) Allgemeine Java-Themen 3
L Vererbung If-Else ersetzen durch was? Allgemeine Java-Themen 20
M Alles außer Muster in String ersetzen Allgemeine Java-Themen 1
S Kann man mit einem GeneralPath.curveTo ein GeneralPath.quadTo ersetzen..? Allgemeine Java-Themen 2
Seikuassi Alle Escape-Sequenzen in einem String ersetzen Allgemeine Java-Themen 4
S RandomAccessFile durch bytearrayinputstream ersetzen Allgemeine Java-Themen 4
S JTable: Model durch ein anderes ersetzen Allgemeine Java-Themen 2
C Hex Zeichen ersetzen durch leer Zeichen Allgemeine Java-Themen 5
T Nur innerhalb des regex-Match ersetzen Allgemeine Java-Themen 9
E NetBeans Vector durch ArrayList ersetzen Allgemeine Java-Themen 4
C Variablen $-Zeichen in String ersetzen Allgemeine Java-Themen 3
D Ersetzen in Open Office Dokument Allgemeine Java-Themen 2
F Slash durch Systembezogenen Fileseparator ersetzen Allgemeine Java-Themen 18
F System.out.println mit log4j ersetzen Allgemeine Java-Themen 10
X Klassen innerhalb einer jar ersetzen Allgemeine Java-Themen 2
D Fehler beim ersetzen in String Allgemeine Java-Themen 2
2 String matchen und ersetzen Allgemeine Java-Themen 3
M Eclipse drei slashs durch zwei ersetzen? Allgemeine Java-Themen 3
J HTML-Sonderzeichen ersetzen Allgemeine Java-Themen 2
Daniel_L RegEx-Frage: Ersetzen in UBB ausschließen Allgemeine Java-Themen 2
Ark Array durch Interface ersetzen Allgemeine Java-Themen 7
thE_29 $ in String ersetzen fürs nochmalige ersetzen.. (JavaBug?) Allgemeine Java-Themen 7
nrg JS als ScriptEngine - alle Punkte ersetzen Allgemeine Java-Themen 4
S String in Datei finden und ersetzen Allgemeine Java-Themen 11
O Zeichenkette aus Zeichenkette ersetzen mit Hashtable Allgemeine Java-Themen 8
Guybrush Threepwood Effizientes Ersetzen von Umlauten Allgemeine Java-Themen 3
W dateiinhalte ersetzen Allgemeine Java-Themen 2
M Klasse zur Laufzeit ersetzen Allgemeine Java-Themen 10
S teile einer datei mit Regexp ersetzen Allgemeine Java-Themen 5
M String ersetzen Allgemeine Java-Themen 10
M Ersetzen von &#xD; Allgemeine Java-Themen 2
G String.replaceall - mehrere Zeichen durch eines ersetzen Allgemeine Java-Themen 5
Daniel_L RegEx - variable Vorkommen ersetzen? Allgemeine Java-Themen 5
E *.class ändern/ersetzen/überschreiben. Allgemeine Java-Themen 9
J Teile eines Strings ersetzen Allgemeine Java-Themen 2
R Farbe im Bild ersetzen Allgemeine Java-Themen 11
J Zweidimensionales Array durch ZwischenArray ersetzen Allgemeine Java-Themen 3
J Chars in einem String durch "nichts" ersetzen Allgemeine Java-Themen 3
F [ und mit replaceAll() ersetzen Allgemeine Java-Themen 2
A Fehler beim Ersetzen eines Strings Allgemeine Java-Themen 3
M RegEx: Muster ersetzen Allgemeine Java-Themen 6
M Variablen in einer .doc Vorlage ersetzen Allgemeine Java-Themen 4

Ähnliche Java Themen

Neue Themen


Oben