• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1690
  • Last Modified:

swing layouts & resizing

I have a JDialog.  The layout used by this JDialog is SpringLayout.  I have two JPanels within this JDialog.  I would like both of these panels to resize when I resize the JDialog.  How can I do this?
4 Solutions
I am not sure how your panels are placed, but I can imagine you have two panels one left, one right, but why use SpringLayout for this? Maybe you could make a picture on how you want the controls to be situated and then we can see what you want.

I don't see any reason why the panels would not resize if you put the constraints correctly.

abcastAuthor Commented:
Actually, I've adjusted my layout selection a bit.  I now have a GridBagLayout with a bunch of components, and then at the bottom I have a JPanel w/ some buttons.  When I resize horizontally, everything seems to respond as I want it to.  However, when I resize vertically, nothing that I want to resize actually resizes.  I have the fill set to BOTH on the constraints, though...
how exactly do u want them to resize?  If you want them to be the same size then use a GridLayout.
If you want one to take all the available space then use a BorderLayout
7 new features that'll make your work life better

It’s our mission to create a product that solves the huge challenges you face at work every day. In case you missed it, here are 7 delightful things we've added recently to monday to make it even more awesome.

abcastAuthor Commented:
How can I do this with a GridBagLayout though? I know there must be some way.  I want the JLabels to stay the same size, but the JTextFields to increase their vertical size as the user resizes the form.
use a BorderLayout for that
abcastAuthor Commented:
Well, I would like to use a GridBagLayout because I want to control the vertical and horizontal spacing between some of the components.
can't help you sorry, i never use it. find it far too cryptic and never found a layout that couldn't be done with other managers.
> How can I do this with a GridBagLayout though?
A possible version would be to define some rations that you want.

so, for example,

I want my jtextArea to be w:2, h:4

then, take the total width of your jframe, divide that into a number that make sense, such as default is set at 50.

where then you have a JtextAra that is width at 100 height at 200 if you multiply it.

then set the jtextarea's width and height to that generated number.

now, on redraw, update all of this based on the Jframe's width and height.

this the the advanced crazy way.. .where layout is nearly customized.

Also, if you get stuck, i remember there are programs that helps you by generating Java Swing code based on a click and drag input screen.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now