Pregunta

Estoy creando una GUI en Java utilizando la GridBagLayout. ¿Hay alguna manera para mí para crear un grupo de componentes para que pueda pasar la referencia al grupo y tener acceso a todos ellos?

He pensado en la creación de un panel y la agrupación de los componentes de esa manera, pero me preguntaba si había otra manera que hace uso de la complejidad de la GridBagLayout.

Muchas gracias!

¿Fue útil?

Solución

Bueno, si no se puede crear un grano con JLabel, JTextField y JButton para contener su grupo, siempre se puede utilizar Map en su panel principal interfaz de usuario para registrar los elementos mientras que los agrega. Algunos estructura como

Map<K, List<Component>>

podría funcionar, donde K es un identificador para un grupo. De esta manera usted disociar los componentes de la forma en que se colocan en la interfaz de usuario.

Otros consejos

Usted debe pensar en como paneles de sólo escritura. Usted bụng sus componentes allí, toda la disposición y con las restricciones de diseño correctas. Usted (casi) nunca se ir y buscar a través de los componentes.

En su lugar, añadir los componentes a un Set (o similar) que se configura. A continuación, puede hacer un bucle elegante for muy limpio sobre la colección para realizar la tarea correspondiente. Una técnica más avanzada sería tener observadores individuales (oyentes) actualización de los componentes de un modelo.

La forma más habitual es utilizar el JPanel como usted sugiere. Recuerde que la propia JPanel puede tener su propio controlador de distribución independiente. Así que es posible utilizar un GridBagLayout en el JPanel para posicionar los elementos en el panel.

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