Public Member Functions | |
TableLayout () | |
TableLayout (double size[][]) | |
TableLayoutConstraints | getConstraints (Component component) |
void | setConstraints (Component component, TableLayoutConstraints constraint) |
void | setColumn (double column[]) |
void | setRow (double row[]) |
void | setColumn (int i, double size) |
void | setRow (int i, double size) |
double[] | getColumn () |
double[] | getRow () |
double | getColumn (int i) |
double | getRow (int i) |
int | getNumColumn () |
int | getNumRow () |
void | insertColumn (int i, double size) |
void | insertRow (int i, double size) |
void | deleteColumn (int i) |
void | deleteRow (int i) |
String | toString () |
void | drawGrid (Container container, Graphics g) |
boolean | hidden () |
boolean | overlapping () |
void | layoutContainer (Container container) |
Dimension | preferredLayoutSize (Container container) |
Dimension | minimumLayoutSize (Container container) |
void | addLayoutComponent (String name, Component component) |
void | addLayoutComponent (Component component, Object constraint) |
void | removeLayoutComponent (Component component) |
Dimension | maximumLayoutSize (Container target) |
float | getLayoutAlignmentX (Container parent) |
float | getLayoutAlignmentY (Container parent) |
void | invalidateLayout (Container target) |
Protected Member Functions | |
void | calculateSize (Container container) |
Protected Attributes | |
double | columnSpec [] |
double | rowSpec [] |
int | columnSize [] |
int | rowSize [] |
int | columnOffset [] |
int | rowOffset [] |
LinkedList | list |
boolean | dirty |
int | oldWidth |
int | oldHeight |
Static Protected Attributes | |
final double | defaultSize [][] = {{}, {}} |
Using spreadsheet terminology, a cell is the intersection of a row and column. Cells have finite, non-negative sizes measured in pixels. The dimensions of a cell depend solely upon the dimensions of its row and column.
A component occupies a rectangular group of one or more cells. If the component occupies more than one cell, the component is resized to fit perfectly in the rectangular region of cells. If the component occupies a single cell, it can be aligned in four ways within that cell.
A single cell component can be stretched horizontally to fit the cell (full justification), or it can be placed in the center of the cell. The component could also be left justified or right justified. Similarly, the component can be full, center, top, or bottom justified in the vertical.
public static void main (String args[]) { // Create a frame Frame frame = new Frame("Example of TableLayout"); frame.setBounds (100, 100, 300, 300); <spc> // Create a TableLayout for the frame double border = 10; double size[][] = {{border, 0.10, 20, TableLayout.FILL, 20, 0.20, border}, // Columns {border, 0.20, 20, TableLayout.FILL, 20, 0.20, border}}; // Rows <spc> frame.setLayout (new TableLayout(size)); <spc> // Create some buttons String label[] = {"Top", "Bottom", "Left", "Right", "Center", "Overlap"}; Button button[] = new Button[label.length]; <spc> for (int i = 0; i < label.length; i++) button[i] = new Button(label[i]); <spc> // Add buttons frame.add (button[0], "1, 1, 5, 1"); // Top frame.add (button[1], "1, 5, 5, 5"); // Bottom frame.add (button[2], "1, 3 "); // Left frame.add (button[3], "5, 3 "); // Right frame.add (button[4], "3, 3, c, c"); // Center frame.add (button[5], "3, 3, 3, 5"); // Overlap <spc> // Allow user to close the window to terminate the program frame.addWindowListener (new WindowListener() { public void windowClosing (WindowEvent e) { System.exit (0); } <spc> public void windowOpened (WindowEvent e) {} public void windowClosed (WindowEvent e) {} public void windowIconified (WindowEvent e) {} public void windowDeiconified (WindowEvent e) {} public void windowActivated (WindowEvent e) {} public void windowDeactivated (WindowEvent e) {} } ); <spc> // Show frame frame.show(); }
|
Constructs an instance of TableLayout. This TableLayout will have one row and one column. |
|
Constructs an instance of TableLayout.
|
|
Adds the specified component with the specified name to the layout.
|
|
Adds the specified component with the specified name to the layout.
|
|
Calculates the sizes of the rows and columns based on the absolute and relative sizes specified in
|
|
Deletes a column in this layout. All components to the right of the deletion point are moved left one column. The container will need to be laid out after this method returns. See
|
|
Deletes a row in this layout. All components below the deletion point are moved up one row. The container will need to be laid out after this method returns. See
|
|
Draws a grid on the given container. This is useful for seeing where the rows and columns go. In the container's paint method, call this method.
|
|
Gets the width of a single column in this layout.
|
|
Gets the sizes of columns in this layout.
|
|
Gets the constraints of a given component.
|
|
Returns the alignment along the x axis. This specifies how the component would like to be aligned relative to other components. The value should be a number between 0 and 1 where 0 represents alignment along the origin, 1 is aligned the furthest away from the origin, 0.5 is centered, etc.
|
|
Returns the alignment along the y axis. This specifies how the component would like to be aligned relative to other components. The value should be a number between 0 and 1 where 0 represents alignment along the origin, 1 is aligned the furthest away from the origin, 0.5 is centered, etc.
|
|
Gets the number of columns in this layout.
|
|
Gets the number of rows in this layout.
|
|
Gets the sizes of a row in this layout.
|
|
Gets the height of a single row in this layout.
|
|
Determines whether or not there are any hidden components. A hidden component is one that will not be shown with this layout's current configuration. Such a component is, at least partly, in an invalid row or column. For example, on a table with five rows, row -1 and row 5 are both invalid. Valid rows are 0 through 4, inclusively.
|
|
Inserts a column in this layout. All components to the right of the insertion point are moved right one column. The container will need to be laid out after this method returns. See
|
|
Inserts a row in this layout. All components below the insertion point are moved down one row. The container will need to be laid out after this method returns. See
|
|
Invalidates the layout, indicating that if the layout manager has cached information it should be discarded. |
|
To lay out the specified container using this layout. This method reshapes the components in the specified target container in order to satisfy the constraints of all components. User code should not have to call this method directly.
|
|
Returns the maximum dimensions for this layout given the components in the specified target container.
|
|
Determines the minimum size of the container argument using this layout. The minimum size is the smallest size that, if used for the container's size, will ensure that all components are at least as large as their minimum size. This method cannot guarantee that all components will be their minimum size. For example, if component A and component B are each allocate half of the container's width and component A wants to be 10 pixels wide while component B wants to be 100 pixels wide, they cannot both be accommodated. Since in general components rather be larger than their minimum size instead of smaller, component B's request will be fulfilled. The minimum size of the container would be 200 pixels.
|
|
Determines whether or not there are any overlapping components. Two components overlap if they cover at least one common cell.
|
|
Determines the preferred size of the container argument using this layout. The preferred size is the smallest size that, if used for the container's size, will ensure that all components are at least as large as their preferred size. This method cannot guarantee that all components will be their preferred size. For example, if component A and component B are each allocate half of the container's width and component A wants to be 10 pixels wide while component B wants to be 100 pixels wide, they cannot both be accommodated. Since in general components rather be larger than their preferred size instead of smaller, component B's request will be fulfilled. The preferred size of the container would be 200 pixels.
|
|
Removes the specified component from the layout.
|
|
Adjusts the width of a single column in this layout. After calling this method, the caller should request this layout manager to perform the layout. This can be done with the following code:
or
window.pack() If this is not done, the changes in the layout will not be seen until the container is resized.
|
|
Adjusts the number and sizes of rows in this layout. After calling this method, the caller should request this layout manager to perform the layout. This can be done with the following code:
layout.layoutContainer(container); container.repaint(); or
window.pack() If this is not done, the changes in the layout will not be seen until the container is resized.
|
|
Sets the constraints of a given component. If the given component is found, the constraints associated with that component. If the given component is null or is not found, null is returned.
|
|
Adjusts the height of a single row in this layout. After calling this method, the caller should request this layout manager to perform the layout. This can be done with the following code:
or
window.pack() If this is not done, the changes in the layout will not be seen until the container is resized.
|
|
Adjusts the number and sizes of rows in this layout. After calling this method, the caller should request this layout manager to perform the layout. This can be done with the following code:
or
window.pack() If this is not done, the changes in the layout will not be seen until the container is resized.
|
|
Converts this TableLayout to a string.
|
|
Offsets of columns in pixels. The left boarder of column n is at columnOffset[n] and the right boarder is at columnOffset[n + 1] for all columns including the last one. columnOffset.length = columnSize.length + 1 |
|
Widths of columns in pixels |
|
Widths of columns expressed in absolute and relative terms |
|
Default row/column size |
|
Indicates whether or not the size of the cells are known for the last known size of the container. If dirty is true or the container has been resized, the cell sizes must be recalculated using calculateSize. |
|
List of components and their sizes |
|
Previous known height of the container |
|
Previous known width of the container |
|
Offsets of rows in pixels. The left boarder of row n is at rowOffset[n] and the right boarder is at rowOffset[n + 1] for all rows including the last one. rowOffset.length = rowSize.length + 1 |
|
Heights of rows in pixels |
|
Heights of rows expressed in absolute and relative terms |