Java Reference
In-Depth Information
import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.Toolkit;
import java.awt.Dimension;
import java.awt.Container;
import java.awt.FlowLayout;
public class TryFlowLayout {
// The window object
static JFrame aWindow = new JFrame("This is a Flow Layout");
public static void main(String[] args) {
Toolkit theKit = aWindow.getToolkit(); // Get the window toolkit
Dimension wndSize = theKit.getScreenSize(); // Get screen size
// Set the position to screen center & size to half screen size
aWindow.setBounds(wndSize.width/4, wndSize.height/4, // Position
wndSize.width/2, wndSize.height/2); // Size
aWindow.setDefaultCloseOperation(JFrame.EXIT _ ON _ CLOSE);
FlowLayout flow = new FlowLayout(); // Create a layout manager
Container content = aWindow.getContentPane(); // Get the content pane
content.setLayout(flow); // Set the container layout mgr
// Now add six button components
for(int i = 1; i <= 6; i++)
content.add(new JButton("Press " + i)); // Add a Button to content pane
aWindow.setVisible(true); // Display the window
}
}
Since it is based on the TryWindow class, only the new code is highlighted. The new code is quite
simple. We create a FlowLayout object and make this the layout manager for aWindow by calling
setLayout() . We then add six JButton components of a default size to aWindow in the loop.
If you compile and run the program you should get a window similar to the following:
The Button objects are positioned by the layout manager flow. As you can see, they have been added
to the first row in the window, and the row is centered. You can confirm that the row is centered and
see how the layout manger automatically spills the components on to the next row once a row is full by
reducing the size of the window.
Search WWH ::




Custom Search