codice:
public void disegnaFinestra()
{
pannelloDati = new JPanel();
c = getContentPane();
Gblayout = new GridBagLayout();
GbConstraints = new GridBagConstraints();
pannelloDati.setLayout(Gblayout);
GbConstraints.insets = new Insets(5, 5, 5, 5);
GbConstraints.ipadx = 1;
GbConstraints.ipady = 1;
//mi creo le etichette
proprietario = new JLabel("Nominativo");
email = new JLabel("E-mail");
oggetto = new JLabel("Oggetto");
modalitaInvio = new JLabel("Modalità di Invio");
maxAllegato =new JLabel ("Dimensione massima allegato");
titoloSezione =new JLabel("Gestione nuova e-mail");
blank =new JLabel("x");
//mi creo i campi text
campoProprietario = new JTextField ();
campoProprietario.setName("nominativo");
campoEmail = new JTextField ();
campoEmail.setName("email");
campoMaxAllegato = new JTextField ();
campoMaxAllegato.setName("maxAllegato");
String condizioneInvio[] = {"Client di posta predefinito", "Form di invio"};
campoModalitaInvio = new JComboBox (condizioneInvio);
campoModalitaInvio.setName("provincia");
campoOggetto = new JTextArea();
campoOggetto.setName("oggetto");
pulsanteIndietro = new PulsanteStandard("Indietro");
pulsanteSalva = new PulsanteStandard("Salva");
makeConstraints(0,0,10,1,0,0, titoloSezione);
GbConstraints.fill = GridBagConstraints.NONE;
GbConstraints.anchor = GridBagConstraints.NORTHEAST;
makeConstraints(1,0,1,1,0,0, proprietario);
makeConstraints(1,5,1,1,0,0, email);
makeConstraints(2,0,1,1,0,0, modalitaInvio);
makeConstraints(2,5,2,1,0,0, maxAllegato);
makeConstraints(3,0,1,1,0,0, oggetto);
GbConstraints.anchor = GridBagConstraints.NORTHEAST;
makeConstraints(6,0,5,1,0,0, pulsanteIndietro);
GbConstraints.anchor = GridBagConstraints.NORTHWEST;
makeConstraints(6,5,5,1,0,0, pulsanteSalva);
GbConstraints.fill = GridBagConstraints.HORIZONTAL ;
makeConstraints(1,1,4,1,1,1, campoProprietario);
makeConstraints(1,6,4,1,1,1, campoEmail);
makeConstraints(2,1,4,1,1,1, campoModalitaInvio);
makeConstraints(2,7,4,1,1,1, campoMaxAllegato);
GbConstraints.fill = GridBagConstraints.BOTH;
GbConstraints.anchor = GridBagConstraints.NORTHEAST;
makeConstraints(3,1,9,3,1,1, campoOggetto);
setSize(Impostazioni.getDimXFinestra(), Impostazioni.getDimYFinestra());
c.add(pannelloDati);
this.setResizable(false);
this.setSize(Impostazioni.getDimXFinestra(), Impostazioni.getDimYFinestra());
}
private void makeConstraints (
int y,int x, /* posizione nella griglia */
int lx, int ly, /* quante celle occupa (in orizzontale e verticale)*/
int wx, int wy, /* dimensione relativa rispetto al pannello */
Component comp /* componente da aggiungere */
)
{
GbConstraints.gridx = x; //colonna
GbConstraints.gridy = y; //riga
GbConstraints.gridwidth = lx;
GbConstraints.gridheight = ly;
GbConstraints.weightx = wx;
GbConstraints.weighty = wy;
Gblayout.setConstraints (comp, GbConstraints );
pannelloDati.add(comp);
}