You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.3 KiB
C
45 lines
1.3 KiB
C
#include "../../lv_examples.h"
|
|
#if LV_USE_GRID && LV_BUILD_EXAMPLES
|
|
|
|
/**
|
|
* Demonstrate grid's "free unit"
|
|
*/
|
|
void lv_example_grid_3(void)
|
|
{
|
|
/*Column 1: fix width 60 px
|
|
*Column 2: 1 unit from the remaining free space
|
|
*Column 3: 2 unit from the remaining free space*/
|
|
static lv_coord_t col_dsc[] = {60, LV_GRID_FR(1), LV_GRID_FR(2), LV_GRID_TEMPLATE_LAST};
|
|
|
|
/*Row 1: fix width 50 px
|
|
*Row 2: 1 unit from the remaining free space
|
|
*Row 3: fix width 50 px*/
|
|
static lv_coord_t row_dsc[] = {50, LV_GRID_FR(1), 50, LV_GRID_TEMPLATE_LAST};
|
|
|
|
/*Create a container with grid*/
|
|
lv_obj_t * cont = lv_obj_create(lv_scr_act());
|
|
lv_obj_set_size(cont, 300, 220);
|
|
lv_obj_center(cont);
|
|
lv_obj_set_grid_dsc_array(cont, col_dsc, row_dsc);
|
|
|
|
lv_obj_t * label;
|
|
lv_obj_t * obj;
|
|
uint32_t i;
|
|
for(i = 0; i < 9; i++) {
|
|
uint8_t col = i % 3;
|
|
uint8_t row = i / 3;
|
|
|
|
obj = lv_obj_create(cont);
|
|
/*Stretch the cell horizontally and vertically too
|
|
*Set span to 1 to make the cell 1 column/row sized*/
|
|
lv_obj_set_grid_cell(obj, LV_GRID_ALIGN_STRETCH, col, 1,
|
|
LV_GRID_ALIGN_STRETCH, row, 1);
|
|
|
|
label = lv_label_create(obj);
|
|
lv_label_set_text_fmt(label, "%d,%d", col, row);
|
|
lv_obj_center(label);
|
|
}
|
|
}
|
|
|
|
#endif
|