Kig på "Creating a GUI with JFC/Swing" på
http://java.sun.com/docs/books/tutorial/uiswing/TOC.html,
der indeholder en nærmere beskrivelse af alle Swing-komponenterne.
Kristian Hansen: Avanceret Java-programmering har også nogle gode
letforståelige eksempler (zippet her)
på brug af Swing.
Andre introduktioner kan findes på
http://developer.java.sun.com/developer/onlineTraining/
JTextField jTextField1 = new JTextField();
JTextField jTextField2 = new JTextField();
og få dem til at redigere i den samme tekst ved at
sætte den ene til at bruge den andens model:
Document datamodel = jTextField1.getDocument();NB: For at interfacet Document skal være kendt skal pakken javax.swing.text importeres (import javax.swing.text.*).
jTextField2.setDocument( datamodel );
public class StortDokument extends PlainDocument
{
public void insertString(int o, String s, AttributeSet a)
throws BadLocationException
{
super.insertString(o, s.toUpperCase(), a);
System.out.println("insertString("+o+", '"+s+"', "+a+")\n"); // log det
}
}
Prøv at oprette og bruge et tekstfelt der bruger StortDokument som model:
Document datamodel = new StortDokument();(Udfordring: Kan du gøre det som en anonym klasse?)
jTextField2.setDocument( datamodel );
Hvad med en menuindgang og en knap?
Prøv også at arve fra AbstractTableModel, der er en implementation af TableModel. Eksempelvis:
public class Titabel extends
AbstractTableModel
{
public int getColumnCount() { return
10; }
public int getRowCount() { return
10;}
public Object getValueAt(int row, int col) { return new
Integer(row*col); }
}