Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Anchoring and Docking Controls in java Swing

Tags:

java

swing

In .net there is a control called anchoring that is used to resize controls dynamically with the form. When a control is anchored to a form and the form is resized, the control maintains the distance between the control and the anchor positions.

My question is that is there any controls in java that does same functionality as anchoring in .net.
As for an example i have selected a textfield and put it on the panel and resized it properly. Now when i change the size of window(JFrame) or maximize the window the textfield will not maintain the same distance as it was previously. I have been using netbeans and i havent found any properties in pallete manager that answers my question. Please explain me with an example or some links.

like image 920
Arpan Avatar asked Sep 30 '09 08:09

Arpan


1 Answers

Java Swing uses Layout Managers to manage the size and postion of visual components. This is the official java tutorial on how to use this Layout managers:

http://java.sun.com/docs/books/tutorial/uiswing/layout/using.html

And there is a brief description of the most common layout managers

FlowLayout (default): it disposes the components left to right and up to down.

BorderLayout: it divides the container in NORTH, SOUTH, WEST, EAST center CENTER. Only one component by position. Components on border expands and the center component uses the space avaiable

GridLayout: you initialice the manager indicating how many rows and cols the grid is going to have. Each cell has same size and you start adding component on the top left cell.

GridBagLayout: the MOST fine grained layout manager, you can do anything with this, but is a bit complicated, see the java documentation for it.

NullLayout (when you nullify the container's layout manayer): no layout manager, components uses the location and size properties to show on components.

And of course, containers inside in other containers can use a different layout manager than their parent. Combining layout managers is a difficult art to learn.

like image 81
Telcontar Avatar answered Oct 05 '22 11:10

Telcontar