# lv_buttonmatrix_private.h (/api/private/widgets/buttonmatrix/lv_buttonmatrix_private_h)



<RelatedHeaders name="lv_buttonmatrix.h" isPrivate="true" />

<ApiSummary structs="1" />

Structs [#structs]

<ApiMember kind="struct" name="_lv_buttonmatrix_t">
  \_lv_buttonmatrix_t [#_lv_buttonmatrix_t]

  Data of button matrix

  | Member          | Type                                                                         | Description                                                                               |
  | --------------- | ---------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
  | `obj`           | <ApiLink name="lv_obj_t" />                                                  |                                                                                           |
  | `map_p`         | `const char *const  *`                                                       | Pointer to the current map                                                                |
  | `button_areas`  | <ApiLink name="lv_area_t" display="lv_area_t *" />                           | Array of areas of buttons                                                                 |
  | `ctrl_bits`     | <ApiLink name="lv_buttonmatrix_ctrl_t" display="lv_buttonmatrix_ctrl_t *" /> | Array of control bytes                                                                    |
  | `btn_cnt`       | `uint32_t`                                                                   | Number of button in 'map\_p'(Handled by the library)                                      |
  | `row_cnt`       | `uint32_t`                                                                   | Number of rows in 'map\_p'(Handled by the library)                                        |
  | `btn_id_sel`    | `uint32_t`                                                                   | Index of the active button (being pressed/released etc) or LV\_BUTTONMATRIX\_BUTTON\_NONE |
  | `one_check`     | `uint32_t`                                                                   | 1: Single button toggled at once                                                          |
  | `auto_free_map` | `uint32_t`                                                                   | 1: Automatically free the map when the widget is deleted                                  |
</ApiMember>

Dependencies [#dependencies]

<FileIncludes includes="[&#x22;lv_obj_private.h&#x22;, &#x22;lvgl_public.h&#x22;]" includedBy="[&#x22;lvgl_private.h&#x22;, &#x22;lv_keyboard_private.h&#x22;]" transitiveIncludes="[&#x22;lv_array.h&#x22;, &#x22;lv_event_private.h&#x22;]" />
