questo è il codice attuale, non chiedermi perchè uso un metodo a parte solo per fare il qui, ovviamente li dentro ci starà molto altro codice di verifica, salvataggio e poi la chiusura
effettivamente il codice così si compila, ma quando avrò 30 menu diversi, che faranno trenta cose diverse, e una toolbar con 15 pulsanti che però useranno lo stesso codice dei menu, come faccio a rendere leggibile il codice ?!?!
codice:
package lib;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public final class GUI
extends JFrame {
// Elementi della GUI
public JButton quit = new JButton("Quit");
public GUI() {
super("JContab v0.01 by Realtebo ");
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
setSize(300,300);
setResizable(false);
centra(this);
// Impostazione degli eventi
quit.addActionListener( new MgrPulsanti() );
addWindowListener( new MgrFinestra() );
// Posizionamento degli elementi della GUI
JPanel panel = new JPanel();
panel.add(quit);
add(panel);
}
// ************************ UTILITY *********************************
private static void centra(JFrame frame) {
java.awt.Dimension dimension =
java.awt.Toolkit.getDefaultToolkit().getScreenSize();
int x = (int) ((dimension.getWidth() - frame.getWidth()) / 2);
int y = (int) ((dimension.getHeight() - frame.getHeight()) / 2);
frame.setLocation(x, y);
}
// ******************* CLASSI LISTENER ***************************
class MgrFinestra extends WindowAdapter {
public void windowClosing ( WindowEvent evt) {
onQuit() ;
}
}
class MgrPulsanti implements ActionListener {
// Action demultiplexer
public void actionPerformed(ActionEvent evt) {
onQuit();
}
}
// ******************* METODI USATI DAGLI EVENTI ****************
private void onQuit() {
dispose();
System.exit(0);
}
}