salve
volevo chiedere se qualcuno ha dimestichezza con il groupLayout e se può, utilizzando la classe sotto riportata, impostarmi correttamente il group layout in modo da avere
labelOrdine textFieldOrdine
labelCliente textFIeldcliente
tabella ordini......................
labelSconto textFieldSconto
labelTotale textFieldTotale
4 pulsanti
codice:
public class NuovoOrdine extends JPanel{
private JLabel idCliente;
private JLabel idOrdine;
private JLabel etichettaSconto;
private JLabel etichettaTotale;
private JTextField ordineNumero;
private JTextField clienteNumero;
private JTextField sconto;
private JTextField totale;
private JTable tabella;
private ButtonGroup gruppoPulsanti;
private JButton pulsantePagato;
private JButton pulsanteSalva;
private JButton pulsanteAnnulla;
private JButton pulsanteEsci;
NuovoOrdine()
{
etichettaSconto = new JLabel("sconto");
etichettaTotale = new JLabel("totale");
sconto = new JTextField();
totale = new JTextField();
idCliente = new JLabel("ID Cliente ");
idOrdine = new JLabel("ID ORDINE ");
ordineNumero = new JTextField();
clienteNumero = new JTextField();
tabella = new JTable(10,10);
gruppoPulsanti = new ButtonGroup();
pulsantePagato = new JButton("Pagato");
pulsantePagato.setToolTipText("per creare fattura"); // cosa deve fare il pulsante
pulsanteSalva = new JButton("Salva");
pulsanteSalva.setToolTipText("salva ordine su database"); // cosa deve fare il pulsante
pulsanteAnnulla = new JButton("Annulla");
pulsanteAnnulla.setToolTipText("per annullare tutte le voci"); // cosa deve fare il pulsante
pulsanteEsci = new JButton("Esci");
pulsanteEsci.setToolTipText("per uscire"); // cosa deve fare il pulsante
//definisco il layout (utilizzando il tipo GroupLayout)
GroupLayout gruppoComponenti = new GroupLayout(this);
this.setLayout(gruppoComponenti);
gruppoComponenti.setAutoCreateGaps(true);//creo il gap automatico tra i componenti
gruppoComponenti.setAutoCreateContainerGaps(true);//creo un gap automatico tra i componenti
//e i lati della finestra
//definisco il layout orizzontale
gruppoComponenti.setHorizontalGroup(gruppoComponenti.createSequentialGroup()
.addGroup(gruppoComponenti.createParallelGroup(GroupLayout.Alignment.LEADING)
.addComponent(idOrdine)
.addComponent(idCliente))
.addGroup(gruppoComponenti.createParallelGroup(GroupLayout.Alignment.LEADING)
.addComponent(ordineNumero)
.addComponent(clienteNumero)
.addGroup(gruppoComponenti.createSequentialGroup()
.addComponent(tabella)))
.addGroup(gruppoComponenti.createParallelGroup(GroupLayout.Alignment.LEADING)
.addComponent(etichettaSconto)
.addComponent(etichettaTotale))
.addGroup(gruppoComponenti.createParallelGroup(GroupLayout.Alignment.LEADING)
.addComponent(sconto)
.addComponent(totale)
.addGroup(gruppoComponenti.createSequentialGroup()
.addComponent(pulsantePagato)
.addComponent(pulsanteSalva)
.addComponent(pulsanteAnnulla)
.addComponent(pulsanteEsci)))
);
//definisco il layout verticale
gruppoComponenti.setVerticalGroup(gruppoComponenti.createSequentialGroup()
.addGroup(gruppoComponenti.createParallelGroup(GroupLayout.Alignment.LEADING)
.addComponent(idOrdine)
.addComponent(ordineNumero))
.addGroup(gruppoComponenti.createParallelGroup(GroupLayout.Alignment.LEADING)
.addComponent(idCliente)
.addComponent(clienteNumero)
.addGroup(gruppoComponenti.createSequentialGroup()
.addComponent(tabella)))
.addGroup(gruppoComponenti.createParallelGroup(GroupLayout.Alignment.TRAILING)
.addComponent(etichettaSconto)
.addComponent(sconto))
.addGroup(gruppoComponenti.createParallelGroup(GroupLayout.Alignment.TRAILING)
.addComponent(etichettaTotale)
.addComponent(totale))
.addGroup(gruppoComponenti.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(pulsantePagato)
.addComponent(pulsanteSalva)
.addComponent(pulsanteAnnulla)
.addComponent(pulsanteEsci))
);
}
public static void main(String[] args)
{
FrameAusiliario f = new FrameAusiliario();
NuovoOrdine n = new NuovoOrdine();
f.add(n);
f.pack();
}
}
grazie mille