Título: Confusión con el gestor GridBagLayout
Publicado por: marixxaa en 20 Enero 2016, 22:27 pm
Hola! estoy intentando acomadar un JList en el marco, pero no tengo éxito, siempre queda en la misma posición, alguien me puede dar una ayuda? muchisimas gracias desde ya. El código deja posicionado de esta manera al JList: (http://thumbs.subefotos.com/fb215ed786be9bc6154c19357214b1c0o.jpg) (http://subefotos.com/ver/?fb215ed786be9bc6154c19357214b1c0o.png) Y lo que yo deseo es esto: (http://thumbs.subefotos.com/2d71be5738d105b48a48503b293c187eo.jpg) (http://subefotos.com/ver/?2d71be5738d105b48a48503b293c187eo.png) String obrasSociales[] = { "Osde", "Osecac", "Galeno", "Swiss Medical"}; JList obraSocial =new JList(obrasSociales); obraSocial.setVisibleRowCount(2); ManejadorJList manejadorJList=new ManejadorJList(); obraSocial.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); JScrollPane scrollPane = new JScrollPane(obraSocial); cuenta=new JTextField("",10); nombre = new JTextField("",10); apellido = new JTextField("",10); dni = new JTextField("",10); cuentaLabel = new JLabel("Cuenta"); nombreLabel = new JLabel("Nombre"); apellidoLabel = new JLabel("Apellido"); dniLabel = new JLabel("Dni"); ingresar= new JButton("Ingresar"); modificar= new JButton("Modificar"); vacio=new JLabel(" ");
GridBagLayout gbl=new GridBagLayout(); GridBagConstraints gbc=new GridBagConstraints(); FlowLayout flowLayout1=new FlowLayout(); setLayout(gbl);
gbc.fill=GridBagConstraints.HORIZONTAL; gbc.anchor=GridBagConstraints.WEST; gbc.gridwidth=1; gbc.insets=new Insets(0,0,0,0); add(cuentaLabel, gbc);
gbc.fill=GridBagConstraints.HORIZONTAL; gbc.anchor=GridBagConstraints.WEST; gbc.insets=new Insets(0,0,0,0); gbc.gridwidth = GridBagConstraints.REMAINDER; add(cuenta, gbc);
gbc.fill=GridBagConstraints.HORIZONTAL; gbc.anchor=GridBagConstraints.WEST; gbc.gridwidth=1; gbc.insets=new Insets(0,0,0,0); add(nombreLabel, gbc); gbc.gridwidth = GridBagConstraints.REMAINDER; add(nombre, gbc);
gbc.fill=GridBagConstraints.HORIZONTAL; gbc.anchor=GridBagConstraints.WEST; gbc.gridwidth=1; gbc.insets=new Insets(0,0,0,0); add(apellidoLabel, gbc); gbc.gridwidth = GridBagConstraints.REMAINDER; add(apellido, gbc);
gbc.fill=GridBagConstraints.HORIZONTAL; gbc.anchor=GridBagConstraints.WEST; gbc.gridwidth=1; gbc.insets=new Insets(0,0,0,0); add(dniLabel, gbc); gbc.gridwidth = GridBagConstraints.REMAINDER; add(dni, gbc);
gbc.fill=GridBagConstraints.HORIZONTAL; gbc.anchor=GridBagConstraints.WEST; gbc.gridwidth=1; gbc.insets=new Insets(0,0,0,0); add(ingresar, gbc); gbc.fill=GridBagConstraints.NONE; add(modificar,gbc); Muchas gracias desde ya!!!
Título: Re: Confusión con el gestor GridBagLayout
Publicado por: 0xFer en 21 Enero 2016, 00:09 am
Te ayudaría mejor si publicaras todo el código, para no tener que escribir todo de nuevo en caso de que no haya trabajado antes con los temas sobre tu duda. Buscando por la web me encontré con algo parecido a lo que estas haciendo y te dejo el código; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.*; import javax.swing.event.*; public class FlightReservation extends JFrame { public FlightReservation() { super("Flight Reservation Dialog"); setSize(400, 300); // Variant 1 cb1.addItem("New York"); p1r.add(cb1); cb2.addItem("London"); p1r.add(cb2); p1.add(p1r); String[] list = {"UNO", "DOS", "TRES", "CUATRO", "CINCO", "SEIS", "SIETEASDAS"}; scrollpane. add(new JList(list )); p3.add(scrollpane); p1.add(p3); p4c.add(b1); p4c.add(b2); p4c.add(b3); p4.add(p4c); } }; addWindowListener(wndCloser); setVisible(true); } public static void main (String argv []) { new FlightReservation(); } }
Lo he modificado un poco para que se parezca más a lo que quieres. Otra opción creo que sería meter un GridLayout dentro de otro en el de la derecha solo estaría la lista, bueno no sé si funcionaría. Fuente Del Código (http://www.javafaq.nu/java-bookpage-15-4.html)
|