salve a tutti, sto realizzando una JDialog per l'inseriemnto di alcuni dati ma sto diventando matto, utilizzo GridBaglayout in modo che se l'utente ingrandisce o rimpiccolisce la finestra i componenti rimarranno sempre al centro....
ho scritto questo codice
non riesco fare in modo che i due JButton risultino al centro della finestra... vengono sempre spostati a destra o a sinistra... ora li ho messi in un altro contenitore, prima avevo provato a gestirli nello stesso delle label e delle textbox ma non c'è verso...codice:import java.awt.*; import javax.swing.*; import java.awt.event.*; import java.awt.GridBagLayout; public class dialogCliente extends JDialog{ public Font ubuntu = new Font("ubuntu",Font.PLAIN,15); public dialogCliente(){ setTitle("Dati cliente"); setModal(true); Container corpo = new JPanel(); GridBagLayout layout = new GridBagLayout(); GridBagConstraints lim = new GridBagConstraints(); corpo.setLayout(layout); Font titolo = new Font("ubuntu", Font.BOLD, 20); Component intestazione = new JLabel("Dati cliente"); intestazione.setFont(titolo); lim.gridx=0; lim.gridy=0; lim.gridwidth=2; layout.setConstraints(intestazione, lim); corpo.add(intestazione); Component rigaVuota= new JLabel(" "); lim.gridx=0; lim.gridy=1; lim.gridwidth=1; layout.setConstraints(rigaVuota,lim); corpo.add(rigaVuota); Component jlCognome = new jl("Cognome"); lim.gridx=0; lim.gridy=2; lim.gridwidth=1; lim.ipadx=25; lim.ipady=8; lim.anchor = GridBagConstraints.EAST; layout.setConstraints(jlCognome,lim); corpo.add(jlCognome); Component jtfCognome = new jtf(); lim.gridx=1; lim.gridy=2; lim.gridwidth=1; lim.ipady=0; lim.ipadx=300; lim.anchor = GridBagConstraints.WEST; layout.setConstraints(jtfCognome,lim); corpo.add(jtfCognome); Component jlNome =new jl("Nome"); lim.gridx=0; lim.gridy=3; lim.gridwidth=1; lim.ipadx=25; lim.ipady=8; lim.anchor = GridBagConstraints.EAST; layout.setConstraints(jlNome,lim); corpo.add(jlNome); Component jtfNome = new jtf(); lim.gridx=1; lim.gridy=3; lim.gridwidth=1; lim.ipady=0; lim.ipadx=300; lim.anchor=GridBagConstraints.WEST; layout.setConstraints(jtfNome,lim); corpo.add(jtfNome); Component jlIndirizzo = new jl("Indirizzo"); lim.gridx=0; lim.gridy=4; lim.gridwidth=1; lim.ipadx=25; lim.ipady=8; lim.anchor=GridBagConstraints.EAST; layout.setConstraints(jlIndirizzo,lim); corpo.add(jlIndirizzo); Component jtfIndirizzo = new jtf(); lim.gridx=1; lim.gridy=4; lim.gridwidth=1; lim.ipady=0; lim.ipadx=300; lim.anchor= GridBagConstraints.WEST; layout.setConstraints(jtfIndirizzo,lim); corpo.add(jtfIndirizzo); Component jlCitta = new jl("Città"); lim.gridx=0; lim.gridy =5; lim.gridwidth=1; lim.ipadx=25; lim.ipady=8; lim.anchor=GridBagConstraints.EAST; layout.setConstraints(jlCitta,lim); corpo.add(jlCitta); Component jtfCitta = new jtf(); lim.gridx=1; lim.gridy=5; lim.gridwidth=1; lim.ipady=0; lim.ipadx=300; lim.anchor= GridBagConstraints.WEST; layout.setConstraints(jtfCitta,lim); corpo.add(jtfCitta); Component jlTelefono = new jl("Telefono"); lim.gridx=0; lim.gridy =6; lim.gridwidth=1; lim.ipadx=25; lim.ipady=8; lim.anchor=GridBagConstraints.EAST; layout.setConstraints(jlTelefono,lim); corpo.add(jlTelefono); Component jtfTelefono = new jtf(); lim.gridx=1; lim.gridy=6; lim.gridwidth=1; lim.ipady=0; lim.ipadx=300; lim.anchor= GridBagConstraints.WEST; layout.setConstraints(jtfTelefono,lim); corpo.add(jtfTelefono); Container pulsanti= new JPanel(); GridBagLayout layout2 = new GridBagLayout(); GridBagConstraints lim2 = new GridBagConstraints(); JButton jbAnnulla= new JButton("Annulla"); jbAnnulla.setFont(ubuntu); lim2.gridx=0; lim2.gridy=0; layout2.setConstraints(jbAnnulla,lim2); pulsanti.add(jbAnnulla); JButton jbSalva = new JButton(" Salva "); jbSalva.setFont(ubuntu); lim2.gridx=1; lim2.gridy=2; lim2.ipadx=50; layout2.setConstraints(jbSalva,lim2); lim.gridx=0; lim.gridy=7; lim.gridwidth=2; //lim.weightx=1; layout.setConstraints(pulsanti,lim); corpo.add(pulsanti); pulsanti.add(jbSalva); add(corpo); pack(); }
qualcuno sa dirmi come posso fare per centrare i due pulsanti?

Rispondi quotando
