schema interfaccia grafica

classe principale:

public class Main() {
	public static void main(String[] args) {
		// crea finestra
		JFrame finestra = new JFrame();

		// disegna l'interfaccia
		JButton pulsante = new JButton("...");
		pulsante.setActionCommand("...");
		finestra.add(pulsante, ...);

		// associa eventi ad ascoltatori
		Ascoltatore ascolta = new Ascoltatore(...);
		pulsante.addActionListener(ascolta);

		// configura la finestra
		finestra.pack();
		...
	}
}

ascoltatori:

public class Ascolta implements ActionListener {
	// dati di cui l'ascoltatore ha bisogno

	// costruttore
	Ascolta(...) {
	}

	// azione
	public void actionPerformed(ActionEvent e) {
		// e.getActionCommand()
	}
}

panel e layout:

	JPanel pannello = new JPanel();
	finestra.add(pannello, ...);	// aggiunge il panello alla finestra
	pannello.add(pulsante, ...);	// agggiunge il pulsante al pannello

	...

	LayoutManager lm = new FlowLayout();
	finestra.setLayout(lm);
	// oppure
	pannello.setLayout(lm)