I've a JPanel which has GridBaglayout.Now i want to lay components in horizontally say a label and a text field. I want that paricular grid to have the background as Light Blue and these components sitting on that background. I know one way is to do having panel with Blue color and placing these two components on that panel.Then placing this panel over the grid layout cells.This is very tediuos as i'll be having several comaponents to be layed with blue background in row wise(can't have JTable cells here!!!).Can somebody suggest better idea. Thanks in advance Prashanth
Originally posted by Justin Fox: easier way is to just setLayout(null) setBounds(x,y) on your components with in your jpanel.
Easier? Yes. Good? NO!
Unfortunately, Prashanth, GUI layouts are tedious. Sometimes tedious and development go hand in hand. I honestly don't know of a better way to do what you are requesting. When I've had to lay repetitive panels on panels I usually create some sort of factory class or methods to generate the nasty bits over and over. So I might have a method that takes 1 or more components and returns my blue JPanel with these 2 components on them. So the code you write over and over becomes:
And createBluePanel does the tedious work. I would like to point out that there are much better layout managers than what Swing ships with. JGoodies Form Layout for example. Might see if this takes some of the tedious work out of it. [ April 03, 2007: Message edited by: Gregg Bolinger ]