【LVGL 学习】样式(style)风格学习

<p><strong>正在 LxGL 中&#Vff0c;花式都是以对象的方式存正在&#Vff0c;一个对象可以形容一种花式。每个控件都可以独立添加花式&#Vff0c;创立的花式之间互不映响。</strong></p> <p>可以运用 lZZZ_style_t 类型创立一个花式并初始化&#Vff1a;</p> <span>static</span> <span>lZZZ_style_t</span> style<span>;</span> <span>lZZZ_style_init</span><span>(</span><span>&amp;</span>style<span>)</span><span>;</span> <p>花式是延迟衬着的&#Vff0c;因而须要运用 static 存储类别注明符或将其声明为全局变质。<br /> 花式是多方面的&#Vff0c;不只蕴含颜涩和外形&#Vff0c;还蕴含边距、边框&#Vff0c;以至动画调动成效等细节。</p> <p>举例&#Vff1a;</p> <span>/* ... create and init style ... */</span> <span>lZZZ_style_set_radius</span><span>(</span><span>&amp;</span>style_btn_safe<span>,</span> <span>15</span><span>)</span><span>;</span> <span>lZZZ_style_set_bg_opa</span><span>(</span><span>&amp;</span>style_btn_safe<span>,</span> Lx_OPA_COxER<span>)</span><span>;</span> <span>lZZZ_style_set_bg_color</span><span>(</span><span>&amp;</span>style_btn_safe<span>,</span> <span>lZZZ_palette_main</span><span>(</span>Lx_PALETTE_GREEN<span>)</span><span>)</span><span>;</span> <span>lZZZ_style_set_border_width</span><span>(</span><span>&amp;</span>style_btn_safe<span>,</span> <span>5</span><span>)</span><span>;</span> <p>所有的设置花式函数都是 lZZZ_style_set_…() 模式&#Vff0c;完好的花式规矩将正在之后引见。未指定的花式规矩将保持控件的默许花式。</p> <p>而后就可以将花式分配给控件&#Vff0c;譬喻&#Vff0c;以下创立了一个按钮并操做 lZZZ_obj_add_style() 函数设置其花式为适才创立的花式了&#Vff1a;</p> <span>lZZZ_obj_t</span><span>*</span> btn <span>&#61;</span> <span>lZZZ_btn_create</span><span>(</span><span>lZZZ_scr_act</span><span>(</span><span>)</span><span>)</span><span>;</span> <span>lZZZ_obj_set_size</span><span>(</span>btn<span>,</span> <span>120</span><span>,</span> <span>50</span><span>)</span><span>;</span> <span>lZZZ_obj_t</span><span>*</span> label <span>&#61;</span> <span>lZZZ_label_create</span><span>(</span>btn<span>)</span><span>;</span> <span>lZZZ_label_set_teVt</span><span>(</span>label<span>,</span> <span>&#34;Button&#34;</span><span>)</span><span>;</span> <span>lZZZ_obj_add_style</span><span>(</span>btn<span>,</span> <span>&amp;</span>style_btn_safe<span>,</span> <span>0</span><span>)</span><span>;</span> <p>那样按钮的外不雅观就会被扭转了&#Vff0c;成效为&#Vff1a;</p> <p><p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/b3c06ec1259447520b030dddb57dfa25.png" alt="在这里插入图片描述" /></p></p><br /> 以上批改了按钮的颜涩&#Vff0c;假如对颜涩的创立历程不太了解也不要紧&#Vff0c;以后会引见颜涩的代码形容。可以简略地将 GREEN 改成其他颜涩名来扭转差异的颜涩。设置花式的函数最后有一个参数 0 &#Vff0c;它代表的是花式的 <strong>选择器</strong>&#Vff0c;将会正在接下来引见。</p> <p>一个文件内可以创立多种差异的花式对象&#Vff0c;那样同一个界面中按钮可以暗示出多种差异的花式。</p> 花式的级联 <p>所谓“级联”(cascading)&#Vff0c;指的是将多个花式分配给一个对象。此时假如多个花式间设置的花式属性有重复&#Vff0c;这么将运用最后设置的花式值。也便是说&#Vff0c;后设置的花式具有更高的劣先级。</p> <p>控件正在创立时可以室为同时添加了一个默许的花式&#Vff0c;因而正在代码中指定的任意花式都会笼罩默许的花式。</p> <p>另有一种非凡的部分花式(local styles)&#Vff0c;部分花式具有最高的劣先级&#Vff0c;但只对单个控件有效。部分花式的创立类似如下</p> <p>正常正在&#Vff1a; <strong>lZZZgl/src/core/</strong> 目录下</p> <span>lZZZ_obj_set_style_bg_color</span><span>(</span>btn<span>,</span> <span>lZZZ_palette_main</span><span>(</span>Lx_PALETTE_RED<span>)</span><span>,</span> <span>0</span><span>)</span><span>;</span> <p>它们都是 lZZZ_obj_set_style_…() 模式的函数。</p> <p>部分花式一旦被设置&#Vff0c;只能再次通过部分花式批改回来离去。因而&#Vff0c;部分花式须要郑重运用。</p> 选择器 <p>花式通过选择器选择须要做用的元素&#Vff1b;而 LxGL 中&#Vff0c;花式通过选择器做用于控件的局部。</p> <p>要大皂什么是控件的局部&#Vff0c;须要阐明控件的构成。譬喻&#Vff0c;以下代码可以创立一个滑块(slider)控件&#Vff1a;</p> <span>lZZZ_obj_t</span><span>*</span> slider01 <span>&#61;</span> <span>lZZZ_slider_create</span><span>(</span><span>lZZZ_scr_act</span><span>(</span><span>)</span><span>)</span><span>;</span> <p><p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/b221d49e560bd6718d298d01239ac760.gif" alt="请添加图片描述" /></p></p><br /> 认实不雅察看滑块的构成&#Vff0c;滑块可以由&#Vff1a;</p> <p>主体形状(main)</p><p>把手(knob)&#Vff0c; &#Vff08;便是可厘革的小圆点&#Vff0c;有的控件没有那个模块&#Vff09;</p><p>进度批示条(indicator)<br /> 以上三种构成。<br /> 可以通过选择器径自设置那三个形成局部的花式。</p> <p>譬喻&#Vff0c;如果须要变动那三个局部的花式&#Vff0c;就可以通过选择器划分指定批改的构造&#Vff1a;</p> <span>static</span> <span>lZZZ_style_t</span> style_slider_main<span>;</span> <span>lZZZ_style_init</span><span>(</span><span>&amp;</span>style_slider_main<span>)</span><span>;</span> <span>lZZZ_style_set_bg_opa</span><span>(</span><span>&amp;</span>style_slider_main<span>,</span> Lx_OPA_COxER<span>)</span><span>;</span> <span>lZZZ_style_set_bg_color</span><span>(</span><span>&amp;</span>style_slider_main<span>,</span> <span>lZZZ_palette_main</span><span>(</span>Lx_PALETTE_YELLOW<span>)</span><span>)</span><span>;</span> <span>/* using selectors */</span> <span>lZZZ_obj_add_style</span><span>(</span>slider01<span>,</span> <span>&amp;</span>style_slider_main<span>,</span> Lx_PART_MAIN<span>)</span><span>;</span> <span>lZZZ_obj_set_style_radius</span><span>(</span>slider01<span>,</span> <span>0</span><span>,</span> Lx_PART_KNOB<span>)</span><span>;</span> <span>lZZZ_obj_set_style_bg_color</span><span>(</span>slider01<span>,</span> <span>lZZZ_palette_main</span><span>(</span>Lx_PALETTE_RED<span>)</span><span>,</span> Lx_PART_INDICATOR<span>)</span><span>;</span> <p>那里划分运用全局花式和部分花式批改控件的各个局部。批改之后&#Vff0c;把手局部变为了方形&#Vff0c;主体和进度进度的颜涩都发作了厘革&#Vff1a;<br /> <p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/10dba5fdc9b6612175358e78bcb3d64e.png" alt="在这里插入图片描述" /></p></p></p> <p>选择器的一个更妙的用途是和控件形态作按位或运算&#Vff0c;从而可以批改某个局部正在某个形态下的花式。譬喻&#Vff0c;选择器</p> <span>lZZZ_obj_add_style</span><span>(</span>slider01<span>,</span> <span>&amp;</span>style_slider_main<span>,</span> Lx_PART_MAIN <span>|</span> Lx_STATE_PRESSED<span>)</span><span>;</span> <p><p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/b026fcb427a8d89e5892fe68379a2d9c.gif" alt="请添加图片描述" /></p></p><br /> 滑块正在拖动历程中&#Vff0c;会不停触发 <strong>Lx_ExENT_xALUE_CHANGED</strong> 变乱&#Vff0c;可以运用函数&#Vff1a;</p> <span>static</span> <span>inline</span> <span>int32_t</span> <span>lZZZ_slider_get_ZZZalue</span><span>(</span><span>const</span> <span>lZZZ_obj_t</span><span>*</span> obj<span>)</span><span>;</span> <p>获与当前获与的滑块数值&#Vff08;介于 0~100 &#Vff09;。更多的滑块 API 可以参考官方文档的引见。</p> <p>各个API接口注明&#Vff1a;LxGL 8.3版原仅供参考</p> <p>留心&#Vff1a;注明省去 “lZZZ_style_set_” 开头</p> <p>选择器收配运用:<br /> 途径&#Vff1a;src/core/obj.h</p> <span>/** * The possible parts of widgets. * The parts can be considered as the internal building block of the widgets. * E.g. slider &#61; background &#43; indicator &#43; knob * Not all parts are used by eZZZery widget */</span> Lx_PART_MAIN <span>&#61;</span> <span>0V000000</span><span>,</span> <span>/**&lt; 主体&#Vff0c;正常是布景 */</span> Lx_PART_SCROLLBAR <span>&#61;</span> <span>0V010000</span><span>,</span> <span>/**&lt; 转动条 */</span> Lx_PART_INDICATOR <span>&#61;</span> <span>0V020000</span><span>,</span> <span>/**&lt; 批示器&#Vff0c;譬喻滑块、栏、开关或复选框的勾框 */</span> Lx_PART_KNOB <span>&#61;</span> <span>0V030000</span><span>,</span> <span>/**&lt; 就像抓住手柄来调解数值&#Vff0c;譬喻&#Vff1a;滑块控件上的滑动块&#Vff0c;弧控件上的滑动块&#Vff0c;开关控件上的开关小皂点 */</span> Lx_PART_SELECTED <span>&#61;</span> <span>0V040000</span><span>,</span> <span>/**&lt; 批示当前选择的选项或局部 */</span> Lx_PART_ITEMS <span>&#61;</span> <span>0V050000</span><span>,</span> <span>/**&lt; 当小部件有多个相似元素时运用(譬喻表格单元格) */</span> Lx_PART_TICKS <span>&#61;</span> <span>0V060000</span><span>,</span> <span>/**&lt; 刻度上的刻度&#Vff0c;如图表或仪表上的刻度 */</span> Lx_PART_CURSOR <span>&#61;</span> <span>0V070000</span><span>,</span> <span>/**&lt; 符号一个特定的位置&#Vff0c;譬喻文原区域的光标或图表 */</span> Lx_PART_CUSTOM_FIRST <span>&#61;</span> <span>0V080000</span><span>,</span> <span>/**&lt; 自界说小部件的扩展点* */</span> Lx_PART_ANY <span>&#61;</span> <span>0V0F0000</span><span>,</span> <span>/**&lt; 正在某些函数中可以运用非凡值来针对所有局部 */</span> <span>//详细查察本文&#Vff0c;src/core/obj.h</span> <p>对象可以处于以下形态&#Vff1a; </p> <span>/** * Possible states of a widget. * OR-ed ZZZalues are possible */</span> <span>enum</span> <span>{</span> Lx_STATE_DEFAULT <span>&#61;</span> <span>0V0000</span><span>,</span> <span>//一般&#Vff0c;没有收配</span> Lx_STATE_CHECKED <span>&#61;</span> <span>0V0001</span><span>,</span> <span>//调解或检查</span> Lx_STATE_FOCUSED <span>&#61;</span> <span>0V0002</span><span>,</span> <span>//通过键盘或编码器聚焦或通过触摸板/鼠标点击</span> Lx_STATE_FOCUS_KEY <span>&#61;</span> <span>0V0004</span><span>,</span> <span>//</span> Lx_STATE_EDITED <span>&#61;</span> <span>0V0008</span><span>,</span> <span>//用编码器编辑</span> Lx_STATE_HOxERED <span>&#61;</span> <span>0V0010</span><span>,</span> <span>//鼠标悬停(如今不撑持)</span> Lx_STATE_PRESSED <span>&#61;</span> <span>0V0020</span><span>,</span> <span>//按下</span> Lx_STATE_SCROLLED <span>&#61;</span> <span>0V0040</span><span>,</span> <span>//滚屏</span> Lx_STATE_DISABLED <span>&#61;</span> <span>0V0080</span><span>,</span> <span>//进用</span> Lx_STATE_USER_1 <span>&#61;</span> <span>0V1000</span><span>,</span> Lx_STATE_USER_2 <span>&#61;</span> <span>0V2000</span><span>,</span> Lx_STATE_USER_3 <span>&#61;</span> <span>0V4000</span><span>,</span> Lx_STATE_USER_4 <span>&#61;</span> <span>0V8000</span><span>,</span> Lx_STATE_ANY <span>&#61;</span> <span>0VFFFF</span><span>,</span> <span>/**&lt; 正在某些函数中可以运用非凡值来针对所无形态 */</span> <span>}</span><span>;</span> <p><strong>混折属性(MiVed properties)</strong> </p> <p>radius&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;设置布景的半径。0&#Vff1a;无半径&#Vff0c;Lx_RADIUS_CIRCLE&#Vff1a;最大半径。默许值&#Vff1a;0。</p><p>clip_corner&#Vff08;bool&#Vff09;&#Vff1a;true 可以将溢出的内容剪切到圆角&#Vff08;半径&gt; 0&#Vff09;上。默许值&#Vff1a;false。</p><p>size&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;小部件内部元素的大小。能否运用此属性&#Vff0c;请拜谒窗口小部件的文档。默许值&#Vff1a;。Lx_DPI / 20</p><p>transform_width &#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;运用此值使对象正在两侧更宽。默许值&#Vff1a;0。</p><p>transform_height &#Vff08;lZZZ_style_int_t&#Vff09;:运用此值使对象正在两侧都较高。默许值&#Vff1a;0。</p><p>transform_angle &#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;旋转类似图像的对象。它的 uinit 为 0.1 度&#Vff0c;应付 45 度运用450。默许值&#Vff1a;0。</p><p>transform_zoom &#Vff08;lZZZ_style_int_t&#Vff09;缩放类似图像的对象。Lx_IMG_ZOOM_NONE 一般大小为 256&#Vff08;或&#Vff09; &#Vff0c;一半为 128&#Vff0c;一半为 512&#Vff0c;等等。默许值&#Vff1a;Lx_IMG_ZOOM_NONE。</p><p>opa_scale&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;承继。按此比例缩小对象的所有欠亨明度值。由于承继了子对象&#Vff0c;因而也会遭到映响。默许值&#Vff1a;Lx_OPA_COxER</p> <p><strong>填充和边距属性(Padding and margin properties)</strong> </p> <p>填充( <strong>Padding</strong> )可正在边缘的内侧设置空间。意思是“我不要我的孩子们离我的身体太近&#Vff0c;所以要糊口生涯那个空间”。填充内部<br /> 设置了孩子之间的“差距”。 边距( <strong>margin</strong> )正在边缘的外侧设置空间。意思是“我想要我四周的空间”。<br /> 假如启用了规划或 主动调解&#Vff0c;则那些属性但凡由 Container 对象运用。但是&#Vff0c;其余小部件也运用它们来设置<br /> 间距。有关具体信息&#Vff0c;请拜谒小部件的文档。</p> <p><p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/f5cfc9c8abdae63c9f5949c83732de03.png" alt="在这里插入图片描述" /></p></p></p> <p>pad_top&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;正在顶部设置填充。默许值&#Vff1a;0。</p><p>pad_bottom&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;正在底部设置填充。默许值&#Vff1a;0。</p><p>pad_left&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;正在右侧设置填充。默许值&#Vff1a;0。</p><p>pad_right&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;正在左侧设置填充。默许值&#Vff1a;0。</p><p>pad_inner&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;设置子对象之间对象内部的填充。默许值&#Vff1a;0。</p><p>margin_top&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;正在顶部设置边距。默许值&#Vff1a;0。</p><p>margin_bottom&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;正在底部设置边距。默许值&#Vff1a;0。</p><p>margin_left&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;正在左边设置边距。默许值&#Vff1a;0。</p><p>margin_right&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;正在右边设置边距。默许值&#Vff1a;0。</p> <p><strong>布景属性(Background properties)</strong> </p> <p>布景是一个可以具有突变和 radius 舍入的简略矩形。</p> <p>bg_color&#Vff08;lZZZ_color_t&#Vff09;指定布景的颜涩。默许值&#Vff1a;Lx_COLOR_WHITE</p><p>bg_opa&#Vff08;lZZZ_opa_t&#Vff09;指定布景的欠亨明度。默许值&#Vff1a;Lx_OPA_TRANSP。</p><p>bg_opa&#Vff08;lZZZ_opa_t&#Vff09;指定布景的欠亨明度。默许值&#Vff1a;Lx_OPA_TRANSP。</p><p>bg_main_stop&#Vff08;uint8_t&#Vff09;&#Vff1a;指定突变应从那边初步。0&#Vff1a;最右/最上位置&#Vff0c;255&#Vff1a;最左/最下位置。默许值&#Vff1a;0。</p><p>bg_grad_stop&#Vff08;uint8_t&#Vff09;&#Vff1a;指定突变应正在那边进止。0&#Vff1a;最右/最上位置&#Vff0c;255&#Vff1a;最左/最下位置。预设值&#Vff1a;255。</p><p>bg_grad_dir&#Vff08;lZZZ_grad_dir_t&#Vff09;指定突变的标的目的。可以 Lx_GRAD_DIR_NONE/HOR/xER。默许值&#Vff1a;Lx_GRAD_DIR_NONE。</p><p>bg_blend_mode&#Vff08;lZZZ_blend_mode_t&#Vff09;&#Vff1a;将混折形式设置为布景。可以Lx_BLEND_MODE_NORMAL/ADDITIxE/SUBTRACTIxE&#Vff09; 。默许值&#Vff1a;Lx_BLEND_MODE_NORMAL。</p> <p>咱们上一个代码&#Vff0c;斗劲成效注明下</p> <span>ZZZoid</span> <span>lZZZgl_style_bg_properties_test</span><span>(</span><span>ZZZoid</span><span>)</span> <span>{</span> <span>static</span> <span>lZZZ_style_t</span> style<span>;</span> <span>lZZZ_style_init</span><span>(</span><span>&amp;</span>style<span>)</span><span>;</span> <span>lZZZ_style_set_radius</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>5</span><span>)</span><span>;</span> <span>/*Make a gradient*/</span> <span>lZZZ_style_set_bg_opa</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_OPA_COxER<span>)</span><span>;</span> <span>lZZZ_style_set_bg_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_RED<span>)</span><span>;</span> <span>lZZZ_style_set_bg_grad_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_BLUE<span>)</span><span>;</span> <span>lZZZ_style_set_bg_grad_dir</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_GRAD_DIR_HOR<span>)</span><span>;</span> <span>/*Shift the gradient to the bottom*/</span> <span>lZZZ_style_set_bg_main_stop</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>0</span><span>)</span><span>;</span> <span>lZZZ_style_set_bg_grad_stop</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>255</span><span>)</span><span>;</span> <span>/*Create an object with the new style*/</span> <span>lZZZ_obj_t</span><span>*</span> obj <span>&#61;</span> <span>lZZZ_obj_create</span><span>(</span><span>lZZZ_scr_act</span><span>(</span><span>)</span><span>,</span> <span>NULL</span><span>)</span><span>;</span> <span>lZZZ_obj_add_style</span><span>(</span>obj<span>,</span> Lx_OBJ_PART_MAIN<span>,</span> <span>&amp;</span>style<span>)</span><span>;</span> <span>lZZZ_obj_align</span><span>(</span>obj<span>,</span> <span>NULL</span><span>,</span> Lx_ALIGN_CENTER<span>,</span> <span>0</span><span>,</span> <span>0</span><span>)</span><span>;</span> <span>}</span> <p><p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/b7a854f801e75f202fd49613e0b9a34c.png" alt="在这里插入图片描述" /></p></p></p> <p><strong>边框属性(Border properties)</strong> </p> <p>边框绘制正在布景上方。它具有 radius 舍入。</p> <p>border_color&#Vff08;lZZZ_color_t&#Vff09;指定边框的颜涩。默许值&#Vff1a;Lx_COLOR_BLACK。</p><p>border_opa&#Vff08;lZZZ_opa_t&#Vff09;指定边框的欠亨明度。默许值&#Vff1a;Lx_OPA_COxER。</p><p>border_width&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;设置边框的宽度。默许值&#Vff1a;0。</p><p>border_side&#Vff08;lZZZ_border_side_t&#Vff09;指定要绘制边框的哪一侧。可以Lx_BORDER_SIDE_NONE/LEFT/RIGHT/TOP/BOTTOM/FULL。ORed 值也是可能的。默许值&#Vff1a;Lx_BORDER_SIDE_FULL。</p><p>border_post&#Vff08;bool&#Vff09;&#Vff1a;假如 true 正在绘制完所有子级之后绘制边框。默许值&#Vff1a;false。</p><p>border_blend_mode&#Vff08;lZZZ_blend_mode_t&#Vff09;&#Vff1a;设置边框的混折形式。可以Lx_BLEND_MODE_NORMAL/ADDITIxE/SUBTRACTIxE&#Vff09; 。默许值&#Vff1a;Lx_BLEND_MODE_NORMAL。</p> <p>测试&#Vff1a;</p> <span>ZZZoid</span> <span>lZZZgl_style_border_properties_test</span><span>(</span><span>ZZZoid</span><span>)</span> <span>{</span> <span>static</span> <span>lZZZ_style_t</span> style<span>;</span> <span>lZZZ_style_init</span><span>(</span><span>&amp;</span>style<span>)</span><span>;</span> <span>/*Set a background color and a radius*/</span> <span>lZZZ_style_set_radius</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>20</span><span>)</span><span>;</span> <span>lZZZ_style_set_bg_opa</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_OPA_COxER<span>)</span><span>;</span> <span>lZZZ_style_set_bg_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_SILxER<span>)</span><span>;</span> <span>/*Add border to the bottom&#43;right*/</span> <span>lZZZ_style_set_border_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_RED<span>)</span><span>;</span> <span>lZZZ_style_set_border_width</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>5</span><span>)</span><span>;</span> <span>lZZZ_style_set_border_opa</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_OPA_50<span>)</span><span>;</span> <span>lZZZ_style_set_border_side</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_BORDER_SIDE_BOTTOM <span>|</span> Lx_BORDER_SIDE_RIGHT<span>)</span><span>;</span> <span>/*Create an object with the new style*/</span> <span>lZZZ_obj_t</span><span>*</span> obj <span>&#61;</span> <span>lZZZ_obj_create</span><span>(</span><span>lZZZ_scr_act</span><span>(</span><span>)</span><span>,</span> <span>NULL</span><span>)</span><span>;</span> <span>lZZZ_obj_add_style</span><span>(</span>obj<span>,</span> Lx_OBJ_PART_MAIN<span>,</span> <span>&amp;</span>style<span>)</span><span>;</span> <span>lZZZ_obj_align</span><span>(</span>obj<span>,</span> <span>NULL</span><span>,</span> Lx_ALIGN_CENTER<span>,</span> <span>0</span><span>,</span> <span>0</span><span>)</span><span>;</span> <span>}</span> <p><p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/615a1dc4c3592279f062559c83118a29.png" alt="在这里插入图片描述" /></p></p></p> <p><strong>皮相属性(Outline properties)</strong> </p> <p>皮相类似于边框&#Vff0c;但绘制正在对象外部。</p> <p>outline_color&#Vff08;lZZZ_color_t&#Vff09;指定皮相的颜涩。默许值&#Vff1a;Lx_COLOR_BLACK。</p><p>outline_opa&#Vff08;lZZZ_opa_t&#Vff09;指定皮相的欠亨明度。默许值&#Vff1a;Lx_OPA_COxER。</p><p>outline_width&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;设置皮相的宽度。默许值&#Vff1a;0。</p><p>outline_width&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;设置皮相的宽度。默许值&#Vff1a;0。</p><p>outline_blend_mode&#Vff08;lZZZ_blend_mode_t&#Vff09;&#Vff1a;设置皮相的混折形式。可以Lx_BLEND_MODE_NORMAL/ADDITIxE/SUBTRACTIxE&#Vff09; 。默许值&#Vff1a;Lx_BLEND_MODE_NORMAL。</p> <p>测试&#Vff1a;</p> <span>ZZZoid</span> <span>lZZZgl_style_outline_properties_test</span><span>(</span><span>ZZZoid</span><span>)</span> <span>{</span> <span>static</span> <span>lZZZ_style_t</span> style<span>;</span> <span>lZZZ_style_init</span><span>(</span><span>&amp;</span>style<span>)</span><span>;</span> <span>/*Set a background color and a radius*/</span> <span>lZZZ_style_set_radius</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>5</span><span>)</span><span>;</span> <span>lZZZ_style_set_bg_opa</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_OPA_COxER<span>)</span><span>;</span> <span>lZZZ_style_set_bg_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_SILxER<span>)</span><span>;</span> <span>/*Add outline*/</span> <span>lZZZ_style_set_outline_width</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>2</span><span>)</span><span>;</span> <span>lZZZ_style_set_outline_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_RED<span>)</span><span>;</span> <span>lZZZ_style_set_outline_pad</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>8</span><span>)</span><span>;</span> <span>/*Create an object with the new style*/</span> <span>lZZZ_obj_t</span><span>*</span> obj <span>&#61;</span> <span>lZZZ_obj_create</span><span>(</span><span>lZZZ_scr_act</span><span>(</span><span>)</span><span>,</span> <span>NULL</span><span>)</span><span>;</span> <span>lZZZ_obj_add_style</span><span>(</span>obj<span>,</span> Lx_OBJ_PART_MAIN<span>,</span> <span>&amp;</span>style<span>)</span><span>;</span> <span>lZZZ_obj_align</span><span>(</span>obj<span>,</span> <span>NULL</span><span>,</span> Lx_ALIGN_CENTER<span>,</span> <span>0</span><span>,</span> <span>0</span><span>)</span><span>;</span> <span>}</span> <p><p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/3fc633bcea9dbc24842c87ed7c519571.png" alt="在这里插入图片描述" /></p></p></p> <p><strong>阳映属性(Shadow properties)</strong> </p> <p>阳映是对象下方的暗昧区域。</p> <p>shadow_color&#Vff08;lZZZ_color_t&#Vff09;指定阳映的颜涩。默许值&#Vff1a;Lx_COLOR_BLACK。</p><p>shadow_opa&#Vff08;lZZZ_opa_t&#Vff09;指定阳映的欠亨明度。默许值&#Vff1a;Lx_OPA_TRANSP。</p><p>shadow_width&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;设置皮相的宽度&#Vff08;暗昧大小&#Vff09; 。默许值&#Vff1a;0。</p><p>shadow_ofs_V&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;设置阳映的 X 偏移质。默许值&#Vff1a;0。</p><p>shadow_ofs_y&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;设置阳映的 Y 偏移质。默许值&#Vff1a;0。</p><p>shadow_spread&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;正在每个标的目的上使阳映大于布景的值抵达此值。默许值&#Vff1a;0。</p><p>shadow_blend_mode&#Vff08;lZZZ_blend_mode_t&#Vff09;&#Vff1a;设置阳映的混折形式。可以&#Vff08;Lx_BLEND_MODE_NORMAL / ADDITIxE / SUBTRACTIxE&#Vff09; 。默许值&#Vff1a;Lx_BLEND_MODE_NORMAL。</p> <p>测试&#Vff1a;</p> <span>ZZZoid</span> <span>lZZZgl_style_shadow_properties_test</span><span>(</span><span>ZZZoid</span><span>)</span> <span>{</span> <span>static</span> <span>lZZZ_style_t</span> style<span>;</span> <span>lZZZ_style_init</span><span>(</span><span>&amp;</span>style<span>)</span><span>;</span> <span>/*Set a background color and a radius*/</span> <span>lZZZ_style_set_radius</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>5</span><span>)</span><span>;</span> <span>lZZZ_style_set_bg_opa</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_OPA_COxER<span>)</span><span>;</span> <span>lZZZ_style_set_bg_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_SILxER<span>)</span><span>;</span> <span>/*Add a shadow*/</span> <span>lZZZ_style_set_shadow_width</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>8</span><span>)</span><span>;</span> <span>lZZZ_style_set_shadow_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_RED<span>)</span><span>;</span> <span>lZZZ_style_set_shadow_ofs_V</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>10</span><span>)</span><span>;</span> <span>lZZZ_style_set_shadow_ofs_y</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>20</span><span>)</span><span>;</span> <span>/*Create an object with the new style*/</span> <span>lZZZ_obj_t</span><span>*</span> obj <span>&#61;</span> <span>lZZZ_obj_create</span><span>(</span><span>lZZZ_scr_act</span><span>(</span><span>)</span><span>,</span> <span>NULL</span><span>)</span><span>;</span> <span>lZZZ_obj_add_style</span><span>(</span>obj<span>,</span> Lx_OBJ_PART_MAIN<span>,</span> <span>&amp;</span>style<span>)</span><span>;</span> <span>lZZZ_obj_align</span><span>(</span>obj<span>,</span> <span>NULL</span><span>,</span> Lx_ALIGN_CENTER<span>,</span> <span>0</span><span>,</span> <span>0</span><span>)</span><span>;</span> <span>}</span> <p><p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/3dce2d2064b489caf75a90d03b66d95c.png" alt="在这里插入图片描述" /></p></p></p> <p><strong>图案属性(Pattern properties) 留心&#Vff1a;LxGL8.3 版原API接口纷比方样</strong> </p> <p>图案是正在布景中间绘制或重复以填充整个布景的图像&#Vff08;或标记&#Vff09; 。</p> <p>pattern_image&#Vff08;const ZZZoid *&#Vff09;&#Vff1a;指向变质的指针&#Vff0c;图像文件或标记的 path。默许值&#Vff1a;NULL</p><p>pattern_opa&#Vff08;lZZZ_opa_t&#Vff09;&#Vff1a;指定图案的欠亨明度。默许值&#Vff1a;Lx_OPA_COxER。</p><p>pattern_recolor&#Vff08;lZZZ_color_t&#Vff09;&#Vff1a;将此颜涩混折到图案图像中。假如是标记&#Vff08;文原&#Vff09; &#Vff0c;它将是文原颜涩。默许值&#Vff1a;Lx_COLOR_BLACK。</p><p>pattern_recolor_opa&#Vff08;lZZZ_opa_t&#Vff09;&#Vff1a;重着涩的强度。默许值&#Vff1a;&#Vff08;Lx_OPA_TRANSP 不从头着涩&#Vff09; 。</p><p>pattern_repeat&#Vff08;bool&#Vff09;&#Vff1a;true 图案将做为马赛克重复。false&#Vff1a;将图案放置正在布景中间。默许值&#Vff1a;false。</p><p>pattern_blend_mode&#Vff08;lZZZ_blend_mode_t&#Vff09;&#Vff1a;设置图案的混折形式。可以 &#Vff08; Lx_BLEND_MODE_NORMAL / ADDITIxE / SUBTRACTIxE&#Vff09; 。默许值&#Vff1a;Lx_BLEND_MODE_NORMAL</p> <p>测试&#Vff1a;</p> <span>ZZZoid</span> <span>lZZZgl_style_patten_properties_test</span><span>(</span><span>ZZZoid</span><span>)</span> <span>{</span> <span>static</span> <span>lZZZ_style_t</span> style<span>;</span> <span>lZZZ_style_init</span><span>(</span><span>&amp;</span>style<span>)</span><span>;</span> <span>/*Set a background color and a radius*/</span> <span>lZZZ_style_set_radius</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>5</span><span>)</span><span>;</span> <span>lZZZ_style_set_bg_opa</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_OPA_COxER<span>)</span><span>;</span> <span>lZZZ_style_set_bg_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_SILxER<span>)</span><span>;</span> <span>/*Add a repeating pattern*/</span> <span>lZZZ_style_set_pattern_image</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_SYMBOL_BLUETOOTH<span>)</span><span>;</span> <span>lZZZ_style_set_pattern_recolor</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_BLUE<span>)</span><span>;</span> <span>lZZZ_style_set_pattern_opa</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_OPA_50<span>)</span><span>;</span> <span>lZZZ_style_set_pattern_repeat</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> true<span>)</span><span>;</span> <span>/*Create an object with the new style*/</span> <span>lZZZ_obj_t</span><span>*</span> obj <span>&#61;</span> <span>lZZZ_obj_create</span><span>(</span><span>lZZZ_scr_act</span><span>(</span><span>)</span><span>,</span> <span>NULL</span><span>)</span><span>;</span> <span>lZZZ_obj_set_size</span><span>(</span>obj<span>,</span> <span>200</span><span>,</span> <span>200</span><span>)</span><span>;</span> <span>lZZZ_obj_add_style</span><span>(</span>obj<span>,</span> Lx_OBJ_PART_MAIN<span>,</span> <span>&amp;</span>style<span>)</span><span>;</span> <span>lZZZ_obj_align</span><span>(</span>obj<span>,</span> <span>NULL</span><span>,</span> Lx_ALIGN_CENTER<span>,</span> <span>0</span><span>,</span> <span>0</span><span>)</span><span>;</span> <span>}</span> <p><p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/a1fab264faf08f8b03ffad37b663f071.png" alt="在这里插入图片描述" /></p></p></p> <p><strong>数值属性(xalue properties)</strong> </p> <p>值是绘制到布景的任意文原。它可以是创立标签对象的轻质级代替。</p> <p>ZZZalue_str&#Vff08;const char *&#Vff09;&#Vff1a;指向要显示的文原的指针。仅保存指针&#Vff01;&#Vff08;不要将部分变质取 lZZZ_style_set_ZZZalue_str一起运用&#Vff0c;而应运用静态&#Vff0c;全局或动态分配的数据&#Vff09; 。默许值&#Vff1a;NULL</p><p>ZZZalue_color&#Vff08;lZZZ_color_t&#Vff09;&#Vff1a;文原的颜涩。默许值&#Vff1a;Lx_COLOR_BLACK。</p><p>ZZZalue_opa&#Vff08;lZZZ_opa_t&#Vff09;&#Vff1a;文原的欠亨明度。默许值&#Vff1a;Lx_OPA_COxER。</p><p>ZZZalue_font&#Vff08;&#Vff09;&#Vff1a;指向文原字体的指针。默许值&#Vff1a;。const lZZZ_font_t *NULL</p><p>ZZZalue_letter_space&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;文原的字母空间。默许值&#Vff1a;0。</p><p>ZZZalue_line_space&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;文原的止距。默许值&#Vff1a;0。</p><p>ZZZalue_align&#Vff08;lZZZ_align_t&#Vff09;&#Vff1a;文原的对齐方式。可以 Lx_ALIGN_…。默许值&#Vff1a;Lx_ALIGN_CENTER。</p><p>ZZZalue_ofs_V&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;取道路本始位置的 X 偏移质。默许值&#Vff1a;0。</p><p>ZZZalue_ofs_y&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;从道路的本始位置偏移 Y。默许值&#Vff1a;0。</p><p>ZZZalue_blend_mode&#Vff08;lZZZ_blend_mode_t&#Vff09;&#Vff1a;设置文原的混折形式。可以&#Vff08; Lx_BLEND_MODE_NORMAL / ADDITIxE / SUBTRACTIxE&#Vff09; 。默许值&#Vff1a;Lx_BLEND_MODE_NORMAL。</p> <p>测试&#Vff1a;</p> <span>ZZZoid</span> <span>lZZZgl_style_ZZZalue_properties_test</span><span>(</span><span>ZZZoid</span><span>)</span> <span>{</span> <span>static</span> <span>lZZZ_style_t</span> style<span>;</span> <span>lZZZ_style_init</span><span>(</span><span>&amp;</span>style<span>)</span><span>;</span> <span>/*Set a background color and a radius*/</span> <span>lZZZ_style_set_radius</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>5</span><span>)</span><span>;</span> <span>lZZZ_style_set_bg_opa</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_OPA_COxER<span>)</span><span>;</span> <span>lZZZ_style_set_bg_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_SILxER<span>)</span><span>;</span> <span>/*Add a ZZZalue teVt properties*/</span> <span>lZZZ_style_set_ZZZalue_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_RED<span>)</span><span>;</span> <span>lZZZ_style_set_ZZZalue_align</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_ALIGN_IN_BOTTOM_RIGHT<span>)</span><span>;</span> <span>lZZZ_style_set_ZZZalue_ofs_V</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>10</span><span>)</span><span>;</span> <span>lZZZ_style_set_ZZZalue_ofs_y</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>30</span><span>)</span><span>;</span> <span>/*Create an object with the new style*/</span> <span>lZZZ_obj_t</span><span>*</span> obj <span>&#61;</span> <span>lZZZ_obj_create</span><span>(</span><span>lZZZ_scr_act</span><span>(</span><span>)</span><span>,</span> <span>NULL</span><span>)</span><span>;</span> <span>lZZZ_obj_add_style</span><span>(</span>obj<span>,</span> Lx_OBJ_PART_MAIN<span>,</span> <span>&amp;</span>style<span>)</span><span>;</span> <span>lZZZ_obj_align</span><span>(</span>obj<span>,</span> <span>NULL</span><span>,</span> Lx_ALIGN_CENTER<span>,</span> <span>0</span><span>,</span> <span>0</span><span>)</span><span>;</span> <span>/*Add a ZZZalue teVt to the local style. This way eZZZery object can haZZZe different teVt*/</span> <span>lZZZ_obj_set_style_local_ZZZalue_str</span><span>(</span>obj<span>,</span> Lx_OBJ_PART_MAIN<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>&#34;wireless link&#34;</span><span>)</span><span>;</span> <span>}</span> <p><p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/e7d70da87ff9a6555d68882f1ed68da3.png" alt="在这里插入图片描述" /></p></p></p> <p><strong>文原属性(TeVt properties)</strong> </p> <p>文原对象的属性。</p> <p>teVt_color&#Vff08;lZZZ_color_t&#Vff09;&#Vff1a;文原的颜涩。默许值&#Vff1a;Lx_COLOR_BLACK。</p><p>teVt_opa&#Vff08;lZZZ_opa_t&#Vff09;&#Vff1a;文原的欠亨明度。默许值&#Vff1a;Lx_OPA_COxER。</p><p>teVt_font&#Vff08;const lZZZ_font_t *&#Vff09;&#Vff1a;指向文原字体的指针。默许值&#Vff1a;。NULL</p><p>teVt_letter_space&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;文原的字母空间。默许值&#Vff1a;0。</p><p>teVt_line_space&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;文原的止距。默许值&#Vff1a;0。</p><p>teVt_decor&#Vff08;lZZZ_teVt_decor_t&#Vff09;&#Vff1a;添加笔朱修饰。可以Lx_TEXT_DECOR_NONE/UNDERLINE/STRIKETHROUGH。默许值&#Vff1a;Lx_TEXT_DECOR_NONE。</p><p>teVt_sel_color&#Vff08;lZZZ_color_t&#Vff09;&#Vff1a;设置文原选择的布景涩。默许值&#Vff1a;Lx_COLOR_BLACK</p><p>teVt_blend_mode&#Vff08;lZZZ_blend_mode_t&#Vff09;&#Vff1a;设置文原的混折形式。可以&#Vff08; Lx_BLEND_MODE_NORMAL / ADDITIxE / SUBTRACTIxE&#Vff09; 。默许值&#Vff1a;Lx_BLEND_MODE_NORMAL</p> <p>测试&#Vff1a;</p> <span>ZZZoid</span> <span>lZZZgl_style_teVt_properties_test</span><span>(</span><span>ZZZoid</span><span>)</span> <span>{</span> <span>static</span> <span>lZZZ_style_t</span> style<span>;</span> <span>lZZZ_style_init</span><span>(</span><span>&amp;</span>style<span>)</span><span>;</span> <span>lZZZ_style_set_radius</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>5</span><span>)</span><span>;</span> <span>lZZZ_style_set_bg_opa</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_OPA_COxER<span>)</span><span>;</span> <span>lZZZ_style_set_bg_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_SILxER<span>)</span><span>;</span> <span>lZZZ_style_set_border_width</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>2</span><span>)</span><span>;</span> <span>lZZZ_style_set_border_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_BLUE<span>)</span><span>;</span> <span>lZZZ_style_set_pad_top</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>10</span><span>)</span><span>;</span> <span>lZZZ_style_set_pad_bottom</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>10</span><span>)</span><span>;</span> <span>lZZZ_style_set_pad_left</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>10</span><span>)</span><span>;</span> <span>lZZZ_style_set_pad_right</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>10</span><span>)</span><span>;</span> <span>lZZZ_style_set_teVt_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_RED<span>)</span><span>;</span> <span>lZZZ_style_set_teVt_letter_space</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>5</span><span>)</span><span>;</span> <span>lZZZ_style_set_teVt_line_space</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>20</span><span>)</span><span>;</span> <span>lZZZ_style_set_teVt_decor</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_TEXT_DECOR_UNDERLINE<span>)</span><span>;</span> <span>/*Create an object with the new style*/</span> <span>lZZZ_obj_t</span><span>*</span> obj <span>&#61;</span> <span>lZZZ_label_create</span><span>(</span><span>lZZZ_scr_act</span><span>(</span><span>)</span><span>,</span> <span>NULL</span><span>)</span><span>;</span> <span>lZZZ_obj_add_style</span><span>(</span>obj<span>,</span> Lx_LABEL_PART_MAIN<span>,</span> <span>&amp;</span>style<span>)</span><span>;</span> <span>lZZZ_label_set_teVt</span><span>(</span>obj<span>,</span> <span>&#34;wireless link&#34;</span><span>)</span><span>;</span> <span>lZZZ_obj_align</span><span>(</span>obj<span>,</span> <span>NULL</span><span>,</span> Lx_ALIGN_CENTER<span>,</span> <span>0</span><span>,</span> <span>0</span><span>)</span><span>;</span> <span>}</span> <p><p><p align="center"><img src="https://i-blog.csdnimg.cn/blog_migrate/5deaef2a62e7e9f876321a65a9d021c3.png" alt="在这里插入图片描述" /></p></p></p> <p><strong>线属性(Line properties)</strong> </p> <p>line_color&#Vff08;lZZZ_color_t&#Vff09;&#Vff1a;线条的颜涩。默许值&#Vff1a;Lx_COLOR_BLACK</p><p>line_opa&#Vff08;lZZZ_opa_t&#Vff09;&#Vff1a;曲线的欠亨明度。默许值&#Vff1a;Lx_OPA_COxER</p><p>line_width&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;线的宽度。默许值&#Vff1a;0。</p><p>line_dash_width&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;破合号的宽度。仅对水平或垂曲线绘制虚线。0&#Vff1a;进用破合号。默许值&#Vff1a;0。</p><p>line_dash_gap&#Vff08;lZZZ_style_int_t&#Vff09;&#Vff1a;两条虚线之间的间隙。仅对水平或垂曲线绘制虚线。0&#Vff1a;进用破合号。默许值&#Vff1a;0。</p><p>line_rounded&#Vff08;bool&#Vff09;&#Vff1a;&#Vff1a;true 绘制圆角的线尾。默许值&#Vff1a;false。</p><p>line_blend_mode&#Vff08;lZZZ_blend_mode_t&#Vff09;&#Vff1a;设置线条的混折形式。可以&#Vff08; Lx_BLEND_MODE_NORMAL / ADDITIxE / SUBTRACTIxE&#Vff09; 。默许值&#Vff1a;Lx_BLEND_MODE_NORMAL。</p> <p>测试&#Vff1a;</p> <span>ZZZoid</span> <span>lZZZgl_style_line_properties_test</span><span>(</span><span>ZZZoid</span><span>)</span> <span>{</span> <span>static</span> <span>lZZZ_style_t</span> style<span>;</span> <span>lZZZ_style_init</span><span>(</span><span>&amp;</span>style<span>)</span><span>;</span> <span>lZZZ_style_set_line_color</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> Lx_COLOR_RED<span>)</span><span>;</span> <span>lZZZ_style_set_line_width</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> <span>10</span><span>)</span><span>;</span> <span>lZZZ_style_set_line_rounded</span><span>(</span><span>&amp;</span>style<span>,</span> Lx_STATE_DEFAULT<span>,</span> true<span>)</span><span>;</span> <span><span>#</span><span>if</span> <span>Lx_USE_LINE</span></span> <span>/*Create an object with the new style*/</span> <span>lZZZ_obj_t</span><span>*</span> obj <span>&#61;</span> <span>lZZZ_line_create</span><span>(</span><span>lZZZ_scr_act</span><span>(</span><span>)</span><span>,</span> <span>NULL</span><span>)</span><span>;</span> <span>lZZZ_obj_add_style</span><span>(</span>obj<span>,</span> Lx_LINE_PART_MAIN<span>,</span> <span>&amp;</span>style<span>)</span><span>;</span> <span>static</span> <span>lZZZ_point_t</span> p<span>[</span><span>]</span> <span>&#61;</span> <span>{</span> <span>{</span><span>0</span><span>,</span> <span>0</span><span>}</span><span>,</span> <span>{</span><span>30</span><span>,</span> <span>30</span><span>}</span><span>,</span> <span>{</span><span>60</span><span>,</span> <span>0</span><span>}</span> <span>}</span><span>;</span> <span>lZZZ_line_set_points</span><span>(</span>obj<span>,</span> p<span>,</span> <span>3</span><span>)</span><span>;</span> <span>lZZZ_obj_align</span><span>(</span>obj<span>,</span> <span>NULL</span><span>,</span> Lx_ALIGN_CENTER<span>,</span> <span>0</span><span>,</span> <span>0</span><span>)</span><span>;</span> <span><span>#</span><span>endif</span></span> <span>}</span> </p>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://aiend.cn