样式属性
https://lvgl.100ask.net/8.1/overview/style-props.html#
一、尺寸与位置(Size and position)
控制对象的大小、位置、变换等基础布局属性。
属性名 | 说明 | 默认值 | 继承性 | 布局影响 | 扩展绘制 |
---|---|---|---|---|---|
width | 设置对象宽度,支持像素值、百分比(基于父对象内容区宽度)和 LV_SIZE_CONTENT(自适应内容) | 0 | 否 | 是 | 否 |
min_width | 设置最小宽度,支持像素值和百分比(基于父对象内容区宽度) | 0 | 否 | 是 | 否 |
max_width | 设置最大宽度,支持像素值和百分比(基于父对象内容区宽度) | 0 | 否 | 是 | 否 |
height | 设置对象高度,支持像素值、百分比(基于父对象内容区高度)和 LV_SIZE_CONTENT(自适应内容) | 0 | 否 | 是 | 否 |
min_height | 设置最小高度,支持像素值和百分比(基于父对象内容区高度) | 0 | 否 | 是 | 否 |
max_height | 设置最大高度,支持像素值和百分比(基于父对象内容区高度) | 0 | 否 | 是 | 否 |
x | 设置对象X坐标(需结合对齐方式),支持像素值和百分比(基于父对象内容区宽度) | 0 | 否 | 是 | 否 |
y | 设置对象Y坐标(需结合对齐方式),支持像素值和百分比(基于父对象内容区高度) | 0 | 否 | 是 | 否 |
align | 设置对齐方式(决定X/Y坐标参考点),可选值包括各类LV_ALIGN开头的对齐方式 | 0 | 否 | 是 | 否 |
transform_width | 向两侧扩展宽度,支持像素值和百分比(基于对象自身宽度) | 0 | 否 | 是 | 否 |
transform_height | 向两侧扩展高度,支持像素值和百分比(基于对象自身高度) | 0 | 否 | 是 | 否 |
translate_x | 在X轴移动对象(布局后应用),支持像素值和百分比(基于对象自身宽度) | 0 | 否 | 是 | 否 |
translate_y | 在Y轴移动对象(布局后应用),支持像素值和百分比(基于对象自身高度) | 0 | 否 | 是 | 否 |
transform_zoom | 缩放图像类对象,256(LV_IMG_ZOOM_NONE)为原始大小,128为缩小50%,512为放大100% | 0 | 否 | 是 | 否 |
transform_angle | 旋转图像类对象,单位为0.1度(如450表示45度) | 0 | 否 | 是 | 否 |
二、内边距(Padding)
控制对象内容区与边界的间距,或子对象之间的间距。
属性名 | 说明 | 默认值 | 继承性 | 布局影响 | 扩展绘制 |
---|---|---|---|---|---|
pad_top | 顶部内边距(缩小内容区域顶部空间) | 0 | 否 | 是 | 否 |
pad_bottom | 底部内边距(缩小内容区域底部空间) | 0 | 否 | 是 | 否 |
pad_left | 左侧内边距(缩小内容区域左侧空间) | 0 | 否 | 是 | 否 |
pad_right | 右侧内边距(缩小内容区域右侧空间) | 0 | 否 | 是 | 否 |
pad_row | 行间距(控制子元素垂直间距的布局参数) | 0 | 否 | 是 | 否 |
pad_column | 列间距(控制子元素水平间距的布局参数) | 0 | 否 | 是 | 否 |
三、杂项(Miscellaneous)
其他通用样式属性。
属性名 | 说明 | 默认值 | 继承性 | 布局影响 | 扩展绘制 |
---|---|---|---|---|---|
radius | 设置圆角半径,支持像素值(≥0)或LV_RADIUS_CIRCLE(最大圆角) | 0 | 否 | 否 | 是 |
clip_corner | 是否裁剪圆角处溢出的内容(true/false) | 0 | 否 | 否 | 是 |
opa | 透明度设置:0(完全透明)~256(完全不透明),支持预定义值(如LV_OPA_10) | 0 | 否 | 否 | 是 |
color_filter_dsc | 为对象颜色添加滤镜效果 | 0 | 否 | 否 | 是 |
color_filter_opa | 滤镜强度(透明度规则同opa) | 0 | 否 | 否 | 是 |
anim_time | 动画持续时间(毫秒),具体含义因组件而异 | 0 | 否 | 否 | 是 |
anim_speed | 动画速度(像素/秒),具体含义因组件而异 | 0 | 否 | 否 | 是 |
transition | 状态过渡动画描述(lv_style_transition_dsc_t结构体) | 0 | 否 | 否 | 是 |
blend_mode | 背景混合模式: LV_BLEND_MODE_NORMAL(正常) LV_BLEND_MODE_ADDITIVE(叠加) LV_BLEND_MODE_SUBTRACTIVE(减淡) | 0 | 否 | 否 | 是 |
layout | 设置对象布局方式,影响子对象排列 | 0 | 否 | 是 | 否 |
base_dir | 文本方向: LV_BIDI_DIR_LTR(左到右) LV_BIDI_DIR_RTL(右到左) LV_BIDI_DIR_AUTO(自动) | 0 | 否 | 是 | 否 |
四、背景(Background)
控制对象背景的样式。
属性名 | 说明 | 默认值 | 继承性 | 布局影响 | 扩展绘制 |
---|---|---|---|---|---|
bg_color | 背景颜色设置 | 0 | 否 | 否 | 是 |
bg_opa | 背景透明度设置(遵循标准透明度规则) | 0 | 否 | 否 | 是 |
bg_grad_color | 背景渐变色设置(仅在bg_grad_dir不为LV_GRAD_DIR_NONE时生效) | 0 | 否 | 否 | 是 |
bg_grad_dir | 背景渐变方向设置 可选值: LV_GRAD_DIR_NONE(无渐变) HOR(水平渐变) VER(垂直渐变) | 0 | 否 | 否 | 是 |
bg_main_stop | 背景色渐变起始点设置 (0表示左上角,255表示右下角,128表示中心) | 0 | 否 | 否 | 是 |
bg_grad_stop | 渐变色渐变起始点设置 (0表示左上角,255表示右下角,128表示中心) | 0 | 否 | 否 | 是 |
bg_img_src | 背景图片设置 支持: lv_img_dsc_t指针 文件路径 LV_SYMBOL_xxx符号 | 0 | 否 | 否 | 是 |
bg_img_opa | 背景图片透明度设置(遵循标准透明度规则) | 0 | 否 | 否 | 是 |
bg_img_recolor | 背景图片重着色颜色设置 | 0 | 否 | 否 | 是 |
bg_img_recolor_opa | 背景图片重着色强度设置(遵循标准透明度规则) | 0 | 否 | 否 | 是 |
bg_img_tiled | 背景图片平铺显示设置(布尔值:true/false) | 0 | 否 | 否 | 是 |
五、边框(Border)
控制对象边框的样式。
属性名 | 说明 | 默认值 | 继承性 | 布局影响 | 扩展绘制 |
---|---|---|---|---|---|
bg_color | 背景颜色设置 | 0 | 否 | 否 | 是 |
bg_opa | 背景透明度设置(遵循标准透明度规则) | 0 | 否 | 否 | 是 |
bg_grad_color | 背景渐变色设置(仅在bg_grad_dir不为LV_GRAD_DIR_NONE时生效) | 0 | 否 | 否 | 是 |
bg_grad_dir | 背景渐变方向设置 可选值: LV_GRAD_DIR_NONE(无渐变) HOR(水平渐变) VER(垂直渐变) | 0 | 否 | 否 | 是 |
bg_main_stop | 背景色渐变起始点设置 (0表示左上角,255表示右下角,128表示中心) | 0 | 否 | 否 | 是 |
bg_grad_stop | 渐变色渐变起始点设置 (0表示左上角,255表示右下角,128表示中心) | 0 | 否 | 否 | 是 |
bg_img_src | 背景图片设置 支持: lv_img_dsc_t指针 文件路径 LV_SYMBOL_xxx符号 | 0 | 否 | 否 | 是 |
bg_img_opa | 背景图片透明度设置(遵循标准透明度规则) | 0 | 否 | 否 | 是 |
bg_img_recolor | 背景图片重着色颜色设置 | 0 | 否 | 否 | 是 |
bg_img_recolor_opa | 背景图片重着色强度设置(遵循标准透明度规则) | 0 | 否 | 否 | 是 |
bg_img_tiled | 背景图片平铺显示设置(布尔值:true/false) | 0 | 否 | 否 | 是 |
六、文本(Text)
控制文本类组件的样式。
属性名 | 说明 | 默认值 | 继承性 | 布局影响 | 扩展绘制 |
---|---|---|---|---|---|
text_color | 文本颜色 | 0 | 否 | 否 | 是 |
text_opa | 文本透明度(遵循与opa相同的透明度规则) | 0 | 否 | 否 | 是 |
text_font | 文本字体(lv_font_t指针) | 0 | 否 | 是 | 是 |
text_letter_space | 字符间距(单位:像素) | 0 | 否 | 是 | 是 |
text_line_space | 行间距(单位:像素) | 0 | 否 | 是 | 是 |
text_decor | 文本装饰。可选:LV_TEXT_DECOR_NONE(无)/UNDERLINE(下划线)/STRIKETHROUGH(删除线),可组合使用 | 0 | 否 | 否 | 是 |
text_align | 文本行对齐方式(不影响对象本身对齐)。可选:LV_TEXT_ALIGN_LEFT/CENTER/RIGHT/AUTO(根据文本方向自动对齐) | 0 | 否 | 否 | 是 |
七、图像(Image)
控制图像类组件的样式。
属性名 | 说明 | 默认值 | 继承性 | 布局影响 | 扩展绘制 |
---|---|---|---|---|---|
img_opa | 设置图像透明度(遵循与opa相同的透明度规则) | 0 | 否 | 否 | 是 |
img_recolor | 为图像混合重着色 | 0 | 否 | 否 | 是 |
img_recolor_opa | 设置图像重着色强度(遵循与opa相同的透明度规则) | 0 | 否 | 否 | 是 |
八、轮廓(Outline)
控制对象轮廓的样式(轮廓指对象外围的线条,与边框有所区别)。
属性名 | 说明 | 默认值 | 继承性 | 布局影响 | 扩展绘制 |
---|---|---|---|---|---|
outline_width | 轮廓宽度(单位:像素) | 0 | 否 | 否 | 是 |
outline_color | 轮廓颜色 | 0 | 否 | 否 | 是 |
outline_opa | 轮廓透明度(遵循opa透明度规则) | 0 | 否 | 否 | 是 |
outline_pad | 轮廓与对象的间距(单位:像素) | 0 | 否 | 否 | 是 |
九、阴影(Shadow)
控制对象阴影的样式。
属性名 | 说明 | 默认值 | 继承性 | 布局影响 | 扩展绘制 |
---|---|---|---|---|---|
shadow_width | 阴影宽度(单位:像素,≥0) | 0 | 否 | 否 | 是 |
shadow_ofs_x | 阴影在X轴方向的偏移量(单位:像素) | 0 | 否 | 否 | 是 |
shadow_ofs_y | 阴影在Y轴方向的偏移量(单位:像素) | 0 | 否 | 否 | 是 |
shadow_spread | 阴影扩散范围(单位:像素,正值扩大,负值缩小) | 0 | 否 | 否 | 是 |
shadow_color | 阴影颜色 | 0 | 否 | 否 | 是 |
shadow_opa | 阴影透明度(遵循opa透明度规则) | 0 | 否 | 否 | 是 |
十、线条(Line)
控制线条类组件的样式。
属性名 | 说明 | 默认值 | 继承性 | 布局影响 | 扩展绘制 |
---|---|---|---|---|---|
line_width | 线条宽度(单位:像素) | 0 | 否 | 否 | 是 |
line_dash_width | 虚线宽度(单位:像素,仅支持水平和垂直线) | 0 | 否 | 否 | 是 |
line_dash_gap | 虚线间距(单位:像素,仅支持水平和垂直线) | 0 | 否 | 否 | 是 |
line_rounded | 线条端点圆角效果(布尔值:true/false) | 0 | 否 | 否 | 是 |
line_color | 线条颜色 | 0 | 否 | 否 | 是 |
line_opa | 线条透明度(遵循opa透明度规则) | 0 | 否 | 否 | 是 |
十一、圆弧(Arc)
控制圆弧类组件的样式(如仪表盘、进度环等)。
属性名 | 说明 | 默认值 | 继承性 | 布局影响 | 扩展绘制 |
---|---|---|---|---|---|
arc_width | 圆弧宽度(像素单位) | 0 | 否 | 否 | 是 |
arc_rounded | 圆弧端点样式:true=圆角,false=直角 | 0 | 否 | 否 | 是 |
arc_color | 圆弧颜色设置 | 0 | 否 | 否 | 是 |
arc_opa | 圆弧透明度设置(0=完全透明,256=完全不透明) | 0 | 否 | 否 | 是 |
arc_img_src | 圆弧遮罩图像源(支持 lv_img_dsc_t 指针或文件路径) | 0 | 否 | 否 | 是 |