Sto implementando un editor di testo con il quale uso una routine di ricerca e sostituzione del testo. Premetto anticipatamente che il programma funziona, vorrei migliorare il layout in modo tale che i campi di testo oltre che essere posizionati nella parte sud del pannello, questi siano allineati anche a sinistra. Per comodità non riporto l'intero codice del programma ma solo la parte interessata:
codice://AGGIUNGE UN PULSANTE PER TROVARE DEL TESTO NELL'AREA DI TESTO JButton replaceButton = new JButton("Sostituisci"); panel.add(replaceButton); //inserisce il pulsante fra uno degli elementi del pannello //imposta il gestore di eventi del pulsante insert replaceButton.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent event){ //acquisisce il testo dalla casella di testo Sostituisci String f = from.getText(); //acquisisce la posizione della sottoscritta eventualemente presente nell'area di testo int n = textArea.getText().indexOf(f); if(n >= 0 && f.length() > 0) //sostuistuisce la sottostringa con quella nuova textArea.replaceRange(to.getText(), n, n + f.length()); }//actionPerformed });//addActionListener //aggiunge una casella di testo dove inserire il testo da trovare from = new JTextField("", 8); panel.add(from); //inserisce la casella di testo fra uno degli elementi del pannello //inserisce l'etichetta panel.add(new JLabel("Con")); //aggiunge una casella di testo dove inserire il testo da sostituire to = new JTextField("", 8); panel.add(to); //inserisce la casella di testo fra uno degli elementi del pannello //posiziona i pulsanti in basso al frame contentPane.add(panel, BorderLayout.SOUTH);

Rispondi quotando