Syntax
Success = LayoutFlexSetAlignContent(Layout, AlignContent)Description
Sets how lines are distributed along the cross axis when items wrap in a Flexbox layout container. This property only has an effect when LayoutFlexSetWrap() is enabled and there are multiple lines of items. It's analogous to the `align-content` property in CSS Flexbox.
Parameters
Layout
The handle of the Flexbox layout object. If #Null, it
targets the current layout.
AlignContent
The content alignment constant.
#PG_Flex_AlignContent_Start : Lines are packed toward the start of the cross axis. (Default)
#PG_Flex_AlignContent_Center : Lines are centered along the cross axis.
#PG_Flex_AlignContent_End : Lines are packed toward the end of the cross axis.
#PG_Flex_AlignContent_SpaceAround : Lines are evenly distributed with space around them (half-size space at ends).
#PG_Flex_AlignContent_SpaceBetween : Lines are evenly distributed; first line at the start, last line at the end.
#PG_Flex_AlignContent_Stretch : Lines stretch to take up the remaining space along the cross axis.
Return Value
Returns #True if the alignment mode was successfully
set, or #False if the layout handle or alignment constant
was invalid.
Remarks
This property only applies to layouts whose type is
#PG_Layout_Type_Flex and where
#PG_Flex_Wrap_Enabled is set. It controls the spacing
*between* wrapped lines, whereas LayoutFlexSetAlignItems()
controls the alignment of items *within* a single line.
Example
IncludeFile "ProGUI_PB.pbi"
StartProGUI()
MyWindow = CreateWindow(0, 0, 250, 300, "Flex Align Content", #PG_Window_Default | #PG_Window_LayoutFlex) ; Create a window with a Flex layout
If MyWindow
LayoutSetPadding(#Null, 10) ; Set the current layout's padding
LayoutFlexSetDirection(#Null, #PG_Flex_Direction_Row) ; Lay out in a row
; Enable wrapping
LayoutFlexSetWrap(#Null, #PG_Flex_Wrap_Enabled)
; Distribute the wrapped lines with space around them
LayoutFlexSetAlignContent(#Null, #PG_Flex_AlignContent_SpaceAround)
; Add several widgets that will likely wrap
For i = 1 To 8
widget = CreateWidget(0, 0, 80, 40)
WidgetSetMargin(widget, 5)
Next
WindowShow(MyWindow, #True, #PG_WindowShow_ScreenCentered)
Repeat
Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow
EndIf
StopProGUI()See Also
LayoutSetType, LayoutFlexGetAlignContent, LayoutFlexSetWrap, LayoutFlexSetAlignItems
Supported OS
Windows, Linux