Flex Box - Gap, Row Gap & Column Gap
You can add gap between rows and columns.
Z2UI5_CL_SMPC_APP_158
Controls
sap.m
UI5 1.134
The facts
- Repository
- abap2UI5/samples-controls
- Class
Z2UI5_CL_SMPC_APP_158- Source file
z2ui5_cl_smpc_app_158.clas.abap↗- Library
- sap.m
- UI5 entity
sap.m.FlexBox- Demo kit sample
sap.m.sample.FlexBoxGap- SAP's own sample
- running at sdk.openui5.org ↗
- Minimum UI5
- 1.134
- In the playground
- runs in the browser, with no system and nothing installed
Keywords: flexbox, flex, box, sap.m, gap, vbox, panel, button
Controls it builds
Read out of the builder chain by the abap2UI5 linter, not from the category this sample is filed under — which is what makes “which samples build one of these” a question the catalogue can answer at all.
Libraries
Run it here
The sample running, in this page — the app on its own, with no editor over it.
Switch to Playground with this code
Nothing is installed and nothing is sent anywhere: the ABAP is compiled to JavaScript in this browser and runs against abap2UI5 itself.
The ABAP
z2ui5_cl_smpc_app_158.clas.abap — 156 lines
Click a number to link to a line — shift-click for a range.
Read it on GitHub ↗
" @keywords flexbox flex box sap.m gap vbox panel button
" @summary You can add gap between rows and columns.
CLASS z2ui5_cl_smpc_app_158 DEFINITION PUBLIC.
PUBLIC SECTION.
INTERFACES z2ui5_if_app.
PROTECTED SECTION.
DATA client TYPE REF TO z2ui5_if_client.
METHODS view_display.
PRIVATE SECTION.
ENDCLASS.
CLASS z2ui5_cl_smpc_app_158 IMPLEMENTATION.
METHOD z2ui5_if_app~main.
me->client = client.
IF client->check_on_navigated( ).
view_display( ).
ENDIF.
ENDMETHOD.
METHOD view_display.
DATA(view) = z2ui5_cl_ui5_view_builder=>factory( ).
view->ele( n = `View` ns = `mvc`
)->a( n = `xmlns` v = `sap.m`
)->a( n = `xmlns:mvc` v = `sap.ui.core.mvc`
)->a( n = `xmlns:l` v = `sap.ui.layout`
)->ele( `VBox`
)->ele( `Panel`
)->a( n = `headerText` v = `Gap`
)->ele( `FlexBox`
)->a( n = `alignItems` v = `Start`
" gap is @since 1.134 - kept 1:1 (POST_171)
)->a( n = `gap` v = `30px`
)->a( n = `width` v = `170px`
)->a( n = `wrap` v = `Wrap`
)->tag( `Button`
)->a( n = `text` v = `1`
)->a( n = `type` v = `Emphasized`
)->tag( `Button`
)->a( n = `text` v = `2`
)->a( n = `type` v = `Reject`
)->tag( `Button`
)->a( n = `text` v = `3`
)->a( n = `type` v = `Accept`
)->tag( `Button`
)->a( n = `text` v = `4`
)->a( n = `type` v = `Emphasized`
)->tag( `Button`
)->a( n = `text` v = `5`
)->a( n = `type` v = `Reject`
)->tag( `Button`
)->a( n = `text` v = `6`
)->a( n = `type` v = `Accept`
)->tag( `Button`
)->a( n = `text` v = `7`
)->a( n = `type` v = `Emphasized`
)->tag( `Button`
)->a( n = `text` v = `8`
)->a( n = `type` v = `Reject`
)->tag( `Button`
)->a( n = `text` v = `9`
)->a( n = `type` v = `Accept`
)->end(
)->end(
)->ele( `Panel`
)->a( n = `headerText` v = `Column gap`
)->ele( `FlexBox`
)->a( n = `alignItems` v = `Start`
" columnGap is @since 1.134 - kept 1:1 (POST_171)
)->a( n = `columnGap` v = `30px`
)->a( n = `width` v = `170px`
)->a( n = `wrap` v = `Wrap`
)->tag( `Button`
)->a( n = `text` v = `1`
)->a( n = `type` v = `Emphasized`
)->tag( `Button`
)->a( n = `text` v = `2`
)->a( n = `type` v = `Reject`
)->tag( `Button`
)->a( n = `text` v = `3`
)->a( n = `type` v = `Accept`
)->tag( `Button`
)->a( n = `text` v = `4`
)->a( n = `type` v = `Emphasized`
)->tag( `Button`
)->a( n = `text` v = `5`
)->a( n = `type` v = `Reject`
)->tag( `Button`
)->a( n = `text` v = `6`
)->a( n = `type` v = `Accept`
)->tag( `Button`
)->a( n = `text` v = `7`
)->a( n = `type` v = `Emphasized`
)->tag( `Button`
)->a( n = `text` v = `8`
)->a( n = `type` v = `Reject`
)->tag( `Button`
)->a( n = `text` v = `9`
)->a( n = `type` v = `Accept`
)->end(
)->end(
)->ele( `Panel`
)->a( n = `headerText` v = `Row gap`
)->ele( `FlexBox`
)->a( n = `alignItems` v = `Start`
" rowGap is @since 1.134 - kept 1:1 (POST_171)
)->a( n = `rowGap` v = `30px`
)->a( n = `width` v = `100px`
)->a( n = `wrap` v = `Wrap`
)->tag( `Button`
)->a( n = `text` v = `1`
)->a( n = `type` v = `Emphasized`
)->tag( `Button`
)->a( n = `text` v = `2`
)->a( n = `type` v = `Reject`
)->tag( `Button`
)->a( n = `text` v = `3`
)->a( n = `type` v = `Accept`
)->tag( `Button`
)->a( n = `text` v = `4`
)->a( n = `type` v = `Emphasized`
)->tag( `Button`
)->a( n = `text` v = `5`
)->a( n = `type` v = `Reject`
)->tag( `Button`
)->a( n = `text` v = `6`
)->a( n = `type` v = `Accept`
)->tag( `Button`
)->a( n = `text` v = `7`
)->a( n = `type` v = `Emphasized`
)->tag( `Button`
)->a( n = `text` v = `8`
)->a( n = `type` v = `Reject`
)->tag( `Button`
)->a( n = `text` v = `9`
)->a( n = `type` v = `Accept`
).
client->view_display( view->stringify( ) ).
ENDMETHOD.
ENDCLASS.
More in sap.m
- Upload Set — This sample shows an Upload Set control with a list of files to be uploaded and actions y…
- MaskInput — The sap.m.MaskInput control allows users to easily enter data in a certain format and in…
- Formatted Text — The control can be used for embedding formatted HTML text into your application.
- Check Box — Checkboxes allow users to select a subset of options. If you want to offer an off/on sett…
- Numeric Content of Different Colors — Shows NumericContent including numbers, units of measurement, and status arrows indicatin…
- Header Container - Vertical Mode — The Header Container with a vertical layout and with divider lines.
- Input - Types — Input type corresponds to the type attribute of the HTML input tag. On touch devices, it…
- Link — Here are some links. Typically links are used in user interfaces to trigger navigation to…
- Toolbar - Responsive — Toolbar items can be displayed depending on the current device.
- Whitespaces Pattern — Renders whitespaces properly within controls
- Toolbar vs Bar vs OverflowToolbar — Toolbar handles overflow by shrinking items. OverflowToolbar provides an overflow menu. B…
- Flex Box - Render Type — Flex items can be rendered differently. By default, they are wrapped in a div element. Op…
On this page