Hola a todos, tengo un JFrame que tiene tres componentes dentro.Java Swing: ¿Cómo puedo cambiar el tamaño de una fila en un diseño de cuadrícula y permitir que cambie el tamaño dinámicamente solo horizontalmente y no verticalmente?
- Un menú
- Un panel de pestañas
- un panel que tiene algunos botones
Inicialmente mi objetivo era crear un diseño como el siguiente:
cuando el usuario cambiaría el tamaño de la aplicación, todo se redimensionaría también. Así que pensé que tal vez si he utilizado un diseño de cuadrícula sencilla mi problema estaría resuelto, por lo que decidí hacer lo siguiente:
El panel de pestañas tendrá algunos paneles interiores y los paneles seguirá el diseño de cuadrícula.
el panel en la parte inferior seguirá el diseño de la cuadrícula.
el JFrame seguirá también el diseño de la cuadrícula.
Resultados:
Como se puede ver que esto no es lo que quería, los botones son demasiado grandes y aunque la aplicación redimensiona muy bien:
Los botones cambian de tamaño también, pero siguen siendo demasiado grandes. Me gustaría poder establecer un tamaño pequeño para los botones (más específicamente el panel en el que están contenidos) y cuando el usuario cambia el tamaño de la aplicación, los botones cambiarían de tamaño solo horizontalmente nunca verticalmente, lo que significa que SOLAMENTE el panel con pestañas se agrandaría verticalmente ¿Se puede lograr esto? Busqué y descubrí sobre gridbaglayout, empecé a jugar un poco, pero no logré nada. Todo lo que pude hacer es la siguiente:
parece buena, pero cuando cambio el tamaño de esto es lo que me sale:
gracias de antemano.
+1 creo que esto funcionará también. Luego 'setPreferredSize' para el panel inferior. Eso hará que su altura sea constante. No configure el tamaño para el panel central. De esa forma, todo lo demás mantiene un tamaño, mientras que solo el centro se expande cuando expandes la ventana. Además, el panel inferior debe usar un 'FlowLayout'. – davidXYZ
@davidXYZ No es necesario establecer el tamaño preferido en el panel inferior. ¡configurar el tamaño preferido es la excepción! –
@davidXYZ Le gustaría leer algo sobre [esto] (http://stackoverflow.com/questions/7229226/should-i-avoid-the-use-of-setpreferredmaximumminimumsize-methods-in-java-swi) antes empiezas a jugar con los tamaños pref/max/min – MadProgrammer