Linjebryter.java [Last ned]

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
public class Linjebryter extends JFrame implements ActionListener {
 
  JTextField margPos    = new JTextField(5);
  JButton    brytLinjer = new JButton("Bryt linjer!");
  JTextArea  område     = new JTextArea(4, 20);
 
  public static void main(String[] args) {
    Linjebryter vindu = new Linjebryter();
    vindu.setTitle("Pussig editor");
    vindu.setDefaultCloseOperation(EXIT_ON_CLOSE);
    vindu.opprettGUI();
    vindu.pack();
    vindu.setVisible(true);
  }
 
  public void opprettGUI() {
    JPanel np = new JPanel();
    JLabel etikett = new JLabel("Høyre marg:");
    np.add(etikett);
    np.add(margPos);
    np.add(brytLinjer);
    add(np, BorderLayout.NORTH);
 
    brytLinjer.addActionListener(this);
 
    Font font = new Font("Courier New", Font.PLAIN, 12);
    område.setFont(font);
 
    add(område, BorderLayout.CENTER);
  }
 
  public void actionPerformed(ActionEvent e) {
    int pos = Integer.parseInt(margPos.getText());
    String justert = brytLinjer(område.getText(), pos);
    område.setText(justert);
  }
 
  public String brytLinjer(String tekst, int kol) {
    int fra = 0;
    String nyTekst = "";
    tekst = tekst.replaceAll("\n", "");
    while (fra < tekst.length()) {
      int til = Math.min(fra+kol, tekst.length());
      nyTekst += tekst.substring(fra, til) + "\n";
      fra += kol;
    }
    return nyTekst;
  }
 
}
 
Kildekode blir vist ved hjelp av GeSHi.