Class ColumnConstraints

java.lang.Object
javafx.scene.layout.ConstraintsBase
javafx.scene.layout.ColumnConstraints

public class ColumnConstraints extends ConstraintsBase
Defines optional layout constraints for a column in a GridPane. If a ColumnConstraints object is added for a column in a gridpane, the gridpane will use those constraint values when computing the column's width and layout.

For example, to create a GridPane with 5 columns 100 pixels wide:


     GridPane gridpane = new GridPane();
     for (int i = 0; i < 5; i++) {
         ColumnConstraints column = new ColumnConstraints(100);
         gridpane.getColumnConstraints().add(column);
     }
 
Or, to create a GridPane where columns take 25%, 50%, 25% of its width:

     GridPane gridpane = new GridPane();
     ColumnConstraints col1 = new ColumnConstraints();
     col1.setPercentWidth(25);
     ColumnConstraints col2 = new ColumnConstraints();
     col2.setPercentWidth(50);
     ColumnConstraints col3 = new ColumnConstraints();
     col3.setPercentWidth(25);
     gridpane.getColumnConstraints().addAll(col1,col2,col3);
 
Note that adding an empty ColumnConstraints object has the effect of not setting any constraints, leaving the GridPane to compute the column's layout based solely on its content's size preferences and constraints.
Since:
JavaFX 2.0
  • Property Details

    • minWidth

      public final DoubleProperty minWidthProperty
      The minimum width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the minimum width will be computed to be the largest minimum width of the column's content.

      See Also:
    • prefWidth

      public final DoubleProperty prefWidthProperty
      The preferred width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the preferred width will be computed to be the largest preferred width of the column's content.

      See Also:
    • maxWidth

      public final DoubleProperty maxWidthProperty
      The maximum width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the maximum width will be computed to be the smallest maximum width of the column's content.

      See Also:
    • percentWidth

      public final DoubleProperty percentWidthProperty
      The width percentage of the column. If set to a value greater than 0, the column will be resized to this percentage of the gridpane's available width and the other size constraints (minWidth, prefWidth, maxWidth, hgrow) will be ignored. The default value is -1, which means the percentage will be ignored.
      See Also:
    • hgrow

      public final ObjectProperty<Priority> hgrowProperty
      The horizontal grow priority for the column. If set, the gridpane will use this priority to determine whether the column should be given any additional width if the gridpane is resized larger than its preferred width. This property is ignored if percentWidth is set.

      This default value is null, which means that the column's grow priority will be derived from largest grow priority set on a content node.

      See Also:
    • halignment

      public final ObjectProperty<HPos> halignmentProperty
      The horizontal alignment for the column. If set, will be the default horizontal alignment for nodes contained within the column.

      The default value is null, which means the column alignment will fall back to the default halignment set on the gridpane.

      See Also:
    • fillWidth

      public final BooleanProperty fillWidthProperty
      The horizontal fill policy for the column. The gridpane will use this property to determine whether nodes contained within the column should be expanded to fill the column or kept to their preferred widths.

      The default value is true.

      See Also:
  • Constructor Details

    • ColumnConstraints

      public ColumnConstraints()
      Create a column constraint object with no properties set.
    • ColumnConstraints

      public ColumnConstraints(double width)
      Creates a column constraint object with a fixed width. This is a convenience for setting the preferred width constraint to the fixed value and the minWidth and maxWidth constraints to the USE_PREF_SIZE flag to ensure the column is always that width.
      Parameters:
      width - the width of the column
    • ColumnConstraints

      public ColumnConstraints(double minWidth, double prefWidth, double maxWidth)
      Creates a column constraint object with a fixed size range. This is a convenience for setting the minimum, preferred, and maximum width constraints.
      Parameters:
      minWidth - the minimum width
      prefWidth - the preferred width
      maxWidth - the maximum width
    • ColumnConstraints

      public ColumnConstraints(double minWidth, double prefWidth, double maxWidth, Priority hgrow, HPos halignment, boolean fillWidth)
      Creates a column constraint object with a fixed size range, horizontal grow priority, horizonal alignment, and horizontal fill behavior.
      Parameters:
      minWidth - the minimum width
      prefWidth - the preferred width
      maxWidth - the maximum width
      hgrow - the horizontal grow priority
      halignment - the horizonal alignment
      fillWidth - the horizontal fill behavior
  • Method Details

    • setMinWidth

      public final void setMinWidth(double value)
      Sets the value of the minWidth property.
      Property description:
      The minimum width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the minimum width will be computed to be the largest minimum width of the column's content.

      Parameters:
      value - the value for the minWidth property
      See Also:
    • getMinWidth

      public final double getMinWidth()
      Gets the value of the minWidth property.
      Property description:
      The minimum width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the minimum width will be computed to be the largest minimum width of the column's content.

      Returns:
      the value of the minWidth property
      See Also:
    • minWidthProperty

      public final DoubleProperty minWidthProperty()
      The minimum width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the minimum width will be computed to be the largest minimum width of the column's content.

      Returns:
      the minWidth property
      See Also:
    • setPrefWidth

      public final void setPrefWidth(double value)
      Sets the value of the prefWidth property.
      Property description:
      The preferred width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the preferred width will be computed to be the largest preferred width of the column's content.

      Parameters:
      value - the value for the prefWidth property
      See Also:
    • getPrefWidth

      public final double getPrefWidth()
      Gets the value of the prefWidth property.
      Property description:
      The preferred width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the preferred width will be computed to be the largest preferred width of the column's content.

      Returns:
      the value of the prefWidth property
      See Also:
    • prefWidthProperty

      public final DoubleProperty prefWidthProperty()
      The preferred width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the preferred width will be computed to be the largest preferred width of the column's content.

      Returns:
      the prefWidth property
      See Also:
    • setMaxWidth

      public final void setMaxWidth(double value)
      Sets the value of the maxWidth property.
      Property description:
      The maximum width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the maximum width will be computed to be the smallest maximum width of the column's content.

      Parameters:
      value - the value for the maxWidth property
      See Also:
    • getMaxWidth

      public final double getMaxWidth()
      Gets the value of the maxWidth property.
      Property description:
      The maximum width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the maximum width will be computed to be the smallest maximum width of the column's content.

      Returns:
      the value of the maxWidth property
      See Also:
    • maxWidthProperty

      public final DoubleProperty maxWidthProperty()
      The maximum width for the column. This property is ignored if percentWidth is set.

      The default value is USE_COMPUTED_SIZE, which means the maximum width will be computed to be the smallest maximum width of the column's content.

      Returns:
      the maxWidth property
      See Also:
    • setPercentWidth

      public final void setPercentWidth(double value)
      Sets the value of the percentWidth property.
      Property description:
      The width percentage of the column. If set to a value greater than 0, the column will be resized to this percentage of the gridpane's available width and the other size constraints (minWidth, prefWidth, maxWidth, hgrow) will be ignored. The default value is -1, which means the percentage will be ignored.
      Parameters:
      value - the value for the percentWidth property
      See Also:
    • getPercentWidth

      public final double getPercentWidth()
      Gets the value of the percentWidth property.
      Property description:
      The width percentage of the column. If set to a value greater than 0, the column will be resized to this percentage of the gridpane's available width and the other size constraints (minWidth, prefWidth, maxWidth, hgrow) will be ignored. The default value is -1, which means the percentage will be ignored.
      Returns:
      the value of the percentWidth property
      See Also:
    • percentWidthProperty

      public final DoubleProperty percentWidthProperty()
      The width percentage of the column. If set to a value greater than 0, the column will be resized to this percentage of the gridpane's available width and the other size constraints (minWidth, prefWidth, maxWidth, hgrow) will be ignored. The default value is -1, which means the percentage will be ignored.
      Returns:
      the percentWidth property
      See Also:
    • setHgrow

      public final void setHgrow(Priority value)
      Sets the value of the hgrow property.
      Property description:
      The horizontal grow priority for the column. If set, the gridpane will use this priority to determine whether the column should be given any additional width if the gridpane is resized larger than its preferred width. This property is ignored if percentWidth is set.

      This default value is null, which means that the column's grow priority will be derived from largest grow priority set on a content node.

      Parameters:
      value - the value for the hgrow property
      See Also:
    • getHgrow

      public final Priority getHgrow()
      Gets the value of the hgrow property.
      Property description:
      The horizontal grow priority for the column. If set, the gridpane will use this priority to determine whether the column should be given any additional width if the gridpane is resized larger than its preferred width. This property is ignored if percentWidth is set.

      This default value is null, which means that the column's grow priority will be derived from largest grow priority set on a content node.

      Returns:
      the value of the hgrow property
      See Also:
    • hgrowProperty

      public final ObjectProperty<Priority> hgrowProperty()
      The horizontal grow priority for the column. If set, the gridpane will use this priority to determine whether the column should be given any additional width if the gridpane is resized larger than its preferred width. This property is ignored if percentWidth is set.

      This default value is null, which means that the column's grow priority will be derived from largest grow priority set on a content node.

      Returns:
      the hgrow property
      See Also:
    • setHalignment

      public final void setHalignment(HPos value)
      Sets the value of the halignment property.
      Property description:
      The horizontal alignment for the column. If set, will be the default horizontal alignment for nodes contained within the column.

      The default value is null, which means the column alignment will fall back to the default halignment set on the gridpane.

      Parameters:
      value - the value for the halignment property
      See Also:
    • getHalignment

      public final HPos getHalignment()
      Gets the value of the halignment property.
      Property description:
      The horizontal alignment for the column. If set, will be the default horizontal alignment for nodes contained within the column.

      The default value is null, which means the column alignment will fall back to the default halignment set on the gridpane.

      Returns:
      the value of the halignment property
      See Also:
    • halignmentProperty

      public final ObjectProperty<HPos> halignmentProperty()
      The horizontal alignment for the column. If set, will be the default horizontal alignment for nodes contained within the column.

      The default value is null, which means the column alignment will fall back to the default halignment set on the gridpane.

      Returns:
      the halignment property
      See Also:
    • setFillWidth

      public final void setFillWidth(boolean value)
      Sets the value of the fillWidth property.
      Property description:
      The horizontal fill policy for the column. The gridpane will use this property to determine whether nodes contained within the column should be expanded to fill the column or kept to their preferred widths.

      The default value is true.

      Parameters:
      value - the value for the fillWidth property
      See Also:
    • isFillWidth

      public final boolean isFillWidth()
      Gets the value of the fillWidth property.
      Property description:
      The horizontal fill policy for the column. The gridpane will use this property to determine whether nodes contained within the column should be expanded to fill the column or kept to their preferred widths.

      The default value is true.

      Returns:
      the value of the fillWidth property
      See Also:
    • fillWidthProperty

      public final BooleanProperty fillWidthProperty()
      The horizontal fill policy for the column. The gridpane will use this property to determine whether nodes contained within the column should be expanded to fill the column or kept to their preferred widths.

      The default value is true.

      Returns:
      the fillWidth property
      See Also:
    • toString

      public String toString()
      Returns a string representation of this ColumnConstraints object.
      Overrides:
      toString in class Object
      Returns:
      a string representation of this ColumnConstraints object.