Pregunta

Tengo un JDialog que contiene una serie de JPanels en un CardLayout . Algunos de estos paneles contienen JTables que me gustaría cambiar el tamaño de acuerdo con cualquier cambio de tamaño del JDialog . No estoy seguro de cómo lograr esto y cualquier ayuda sería muy apreciada.

En la actualidad, las tablas simplemente siguen siendo su tamaño actual y no se escalan. Estoy seguro de que es algo simple, pero tengo problemas para localizar el enfoque exacto que se necesita.

Muchas gracias de antemano. Voy a proporcionar más información si es necesario.

editar: JDialog se utiliza como asistente, por lo que solo se muestra uno de los paneles a la vez, de ahí el uso de CardLayout . Lo ideal sería mantener el gestor de diseño, aunque si es el origen de los problemas, obviamente, lo repensaré.

¿Fue útil?

Solución

Puedes mantener el CardLayout, pero debes hacer lo siguiente: 1. establezca el diseño de su JDialog en BorderLayout, y agregue un nuevo JPanel ( contentPanel ) al JDialog
2. ahora configure este diseño contentPanel para que sea CardLayout
3. agregue sus otros paneles al cardlayout según sea necesario.
4. También asegúrese de desactivar los diseños que utiliza en cada uno de los paneles que está agregando al CardLayout. Por defecto, JPanel usa FlowLayout, creo, y esto no es ideal para un JTable. Por lo tanto, es posible que también deba jugar con el diseño del panel que contiene la tabla; prueba BoxLayout o BorderLayout para eso también.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top