codice:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
/**
@effetcts Un frame che visualizza unlayout a griglia variabile per disporre componenti della tabella Dipendente
*/
class Dipendente extends JApplet{
//Costruttore
public void init(){
//aggiunge un pannello al frame
contentPane = getContentPane(); //restituisce l'oggetto pannello del contenuto del JFrame
GridBagLayout layout = new GridBagLayout(); //imposta oggetto griglia variabile
contentPane.setLayout(layout); //aggiunge la griglia al pannello del frame
ActionListener listener = new InviaAction(); //azione associata agli eventi
//costruisce i componenti
JLabel nominativoLabel = new JLabel("Nominativo: ");
nominativoField = new JTextField(10);
JLabel dataNascitaLabel = new JLabel("Data di nascita: ");
dataNascitaField = new JTextField(10);
JLabel luogoNascitaLabel = new JLabel("Luogo di Nascita: ");
luogoNascitaField = new JTextField(10);
JLabel indirizzoLabel = new JLabel("Indirizzo: ");
indirizzoField = new JTextField(30);
JLabel telefonoLabel = new JLabel("Telefono: ");
telefonoField = new JTextField(10);
JLabel matricolaLabel = new JLabel("Matricola: ");
matricolaField = new JTextField(10);
JLabel specializzazioneLabel = new JLabel("Specializzazione: ");
specializzazioneField = new JTextField(10);
JLabel qualificaLabel = new JLabel("Qualifica: ");
qualificaField = new JTextField(10);
JLabel repartoLabel = new JLabel("Reparto: ");
repartoField = new JTextField(10);
inviaButton = new JButton("Invia");
inviaButton.addActionListener(listener);
resetButton = new JButton("Reset");
resetButton.addActionListener(new
ActionListener(){
public void actionPerformed(ActionEvent event){
nominativoField.setText("");
dataNascitaField.setText("");
luogoNascitaField.setText("");
indirizzoField.setText("");
telefonoField.setText("");
matricolaField.setText("");
specializzazioneField.setText("");
qualificaField.setText("");
repartoField.setText("");
nominativoField.requestFocus();
}//actionPerformed
});//addActionListener
//aggiunge componenti alla griglia
GridBagConstraints constraints = new GridBagConstraints();
add(nominativoLabel, constraints, 0, 0, 1, 1);
add(dataNascitaLabel, constraints, 1, 0, 1, 1);
add(luogoNascitaLabel, constraints, 2, 0, 1, 1);
add(indirizzoLabel, constraints, 0, 2, 1, 1);
add(telefonoLabel, constraints, 1, 2, 1, 1);
add(matricolaLabel, constraints, 0, 4, 1, 1);
add(specializzazioneLabel,constraints, 1, 4, 1, 1);
add(qualificaLabel, constraints, 2, 4, 1, 1);
add(repartoLabel, constraints, 3, 4, 1, 1);
//consente alla componente di conservare un'altezza costante quando la finestra viene ridimensionata
constraints.weightx = 5;
//consente alla componente di conservare un'altezza costante quando la finestra viene ridimensionata
//constraints.weighty = 5;
//il metodo fill che una componente venga esteso e riempia l'intera area
constraints.fill = GridBagConstraints.HORIZONTAL;
//il metodo anchor specifica dove deve essere collocata una componente
constraints.anchor = GridBagConstraints.NORTH;
add(nominativoField, constraints, 0, 1, 1, 1);
add(dataNascitaField, constraints, 1, 1, 1, 1);
add(luogoNascitaField, constraints, 2, 1, 1, 1);
add(indirizzoField, constraints, 0, 3, 1, 1);
add(telefonoField, constraints, 1, 3, 1, 1);
add(matricolaField, constraints, 0, 5, 1, 1);
add(specializzazioneField,constraints, 1, 5, 1, 1);
add(qualificaField, constraints, 2, 5, 1, 1);
add(repartoField, constraints, 3, 5, 1, 1);
add(inviaButton, constraints, 1, 6, 1, 1);
add(resetButton, constraints, 2, 6, 1, 1);
}//init
/**
@effects UN comodo metodo per aggiungere una componente alle locazioni date di un layout a griglia variabile.
@param c il compoennete di aggiungere
@param constraints i vincoli da utilizzara per la griglia variabile
@param x la posizione x della griglia
@param y la posizione y della griglia
@param w la larghezza della griglia
@param h l'altezza della griglia
*/
public void add(Component c, GridBagConstraints constraints,
int x, int y, int w, int h){
constraints.gridx = x;
constraints.gridy = y;
constraints.gridwidth = w;
constraints.gridheight = h;
getContentPane().add(c, constraints);
}//add
private Container contentPane;
private JTextField nominativoField;
private JTextField dataNascitaField;
private JTextField luogoNascitaField;
private JTextField indirizzoField;
private JTextField telefonoField;
private JTextField matricolaField;
private JTextField specializzazioneField;
private JTextField qualificaField;
private JTextField repartoField;
private JButton inviaButton;
private JButton resetButton;
/**
@effects un rilevatore di azioni per il tasto invia
*/
private class InviaAction implements ActionListener{
public void actionPerformed(ActionEvent event){
}//actionPerformed
}//FontAction{}
}//Dipendente{}
Inoltre da come potetevedere la routine che gestisce l'evento invia è vuota, non è che qualcuno mi può dare qualche dritta su come implementarla? Grazie anticipatamente.