elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Confusión con el gestor GridBagLayout
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Confusión con el gestor GridBagLayout  (Leído 1,899 veces)
marixxaa

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Confusión con el gestor GridBagLayout
« 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:



Y lo que yo deseo es esto:
 


Código:
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!!!


« Última modificación: 20 Enero 2016, 22:30 pm por marixxaa » En línea

0xFer


Desconectado Desconectado

Mensajes: 400



Ver Perfil
Re: Confusión con el gestor GridBagLayout
« Respuesta #1 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;

Código
  1. import java.awt.*;
  2. import java.awt.event.*;
  3. import javax.swing.*;
  4. import javax.swing.border.*;
  5.  
  6. import javax.swing.event.*;
  7.  
  8. public class FlightReservation extends JFrame
  9.  
  10. {
  11.  
  12.  public FlightReservation() {
  13.  
  14.    super("Flight Reservation Dialog");
  15.  
  16.    setSize(400, 300);
  17.  
  18.    JPanel p1 = new JPanel();
  19.  
  20.    p1.setLayout(new BoxLayout(p1, BoxLayout.X_AXIS));
  21.  
  22.    JPanel p1r = new JPanel();
  23.  
  24.    p1r.setBorder(new EmptyBorder(10, 10, 10, 10));
  25.  
  26.    // Variant 1
  27.  
  28.    p1r.setLayout(new GridLayout(3, 2, 5, 5));
  29.  
  30.    p1r.add(new JLabel("Date:"));
  31.  
  32.    p1r.add(new JTextField());
  33.  
  34.    p1r.add(new JLabel("From:"));
  35.  
  36.    JComboBox cb1 = new JComboBox();
  37.  
  38.    cb1.addItem("New York");
  39.  
  40.    p1r.add(cb1);
  41.  
  42.    p1r.add(new JLabel("To:"));
  43.  
  44.    JComboBox cb2 = new JComboBox();
  45.  
  46.    cb2.addItem("London");
  47.  
  48.    p1r.add(cb2);
  49.  
  50.    p1.add(p1r);
  51.    JPanel p3 = new JPanel();
  52.  
  53.    p3.setLayout(new BoxLayout(p3, BoxLayout.Y_AXIS));
  54.    String[] list = {"UNO","DOS","TRES","CUATRO","CINCO","SEIS","SIETEASDAS"};
  55.    ScrollPane scrollpane = new ScrollPane();
  56.    scrollpane.add(new JList(list));
  57.    p3.add(scrollpane);
  58.  
  59.    p1.add(p3);
  60.  
  61.    getContentPane().add(p1, BorderLayout.NORTH);
  62.  
  63.    JPanel p4 = new JPanel();
  64.  
  65.    JPanel p4c = new JPanel();
  66.  
  67.    p4c.setLayout(new GridLayout(1, 3, 5, 5));
  68.  
  69.    JButton b1 = new JButton("Search");
  70.  
  71.    p4c.add(b1);
  72.  
  73.    JButton b2 = new JButton("Purchase");
  74.  
  75.    p4c.add(b2);
  76.  
  77.    JButton b3 = new JButton("Exit");
  78.  
  79.    p4c.add(b3);
  80.  
  81.    p4.add(p4c);
  82.  
  83.    getContentPane().add(p4, BorderLayout.CENTER);
  84.  
  85.    WindowListener wndCloser = new WindowAdapter() {
  86.  
  87.      public void windowClosing(WindowEvent e) {
  88.  
  89.        System.exit(0);
  90.  
  91.      }
  92.  
  93.    };
  94.  
  95.    addWindowListener(wndCloser);
  96.  
  97.    setVisible(true);
  98.  
  99.  }
  100.  
  101.  public static void main(String argv[]) {
  102.  
  103.    new FlightReservation();
  104.  
  105.  }
  106.  
  107. }
  108.  
  109.  
  110.  

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


En línea

Código
  1. int getRandomNumber(){
  2.    return 4; //chosen by fair dice roll
  3.              //guaranteed to be random
  4. }
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problemas con JInternalFrame y GridBagLayout
Java
Kuni 7 6,086 Último mensaje 21 Mayo 2007, 01:03 am
por Kuni
Problema de resize con GridBagLayout
Java
undercode2 0 1,847 Último mensaje 19 Noviembre 2011, 23:08 pm
por undercode2
[Gestor de contenidos] Gestor,modulo de gestor que sirva como agenda e informes
Desarrollo Web
moikano→@ 0 1,966 Último mensaje 10 Mayo 2014, 11:25 am
por moikano→@
GridBagLayout « 1 2 »
Java
Baal_30 10 6,264 Último mensaje 21 Mayo 2016, 17:50 pm
por + 1 Oculto(s)
GridBagLayout no posiciona los componentes
Java
BJM 0 1,650 Último mensaje 26 Octubre 2016, 16:01 pm
por BJM
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines