当前位置: 首页 > news >正文

网站建设报价单表格广州疫情最新消息

网站建设报价单表格,广州疫情最新消息,网络规划是干什么的,个人门户网站模板按钮基础使用方法: lv_btn 和 lb_obj 使用方法一样,只是外表并不相同,基础创建方法只需一行代码。 lv_obj_t* btn lv_btn_create(lv_scr_act()); 添加大小和位置: lv_obj_t* btn lv_btn_create(lv_scr_act()); lv_obj_set_s…

按钮基础使用方法:

lv_btn lb_obj 使用方法一样,只是外表并不相同,基础创建方法只需一行代码。

lv_obj_t* btn = lv_btn_create(lv_scr_act());

添加大小和位置: 

lv_obj_t* btn = lv_btn_create(lv_scr_act());
lv_obj_set_size(btn, 100, 50);
lv_obj_set_align(btn, LV_ALIGN_CENTER);

添加触发样式: 

lv_obj_set_style_bg_color() 配置为,LV_STATE_PRESSED 即可配置为按下改变颜色。

其中和 lv_obj 一样,共有以下可供选择的参数:

lv_obj_t* btn = lv_btn_create(lv_scr_act());
lv_obj_set_size(btn, 100, 50);
lv_obj_set_align(btn, LV_ALIGN_CENTER);
lv_obj_set_style_bg_color(btn, lv_color_hex(0xffe1d4), LV_STATE_PRESSED);

添加事件:

lv_obj_add_event_cb(); 可以添加事件。

static void event_cb(lv_event_cb_t* e) {lv_event_code_t code = lv_event_get_code(e);if (code == LV_EVENT_VALUE_CHANGED) {printf("LV_EVENT_VALUE_CHANGED\n");}
}void my_gui(void){lv_obj_t* btn = lv_btn_create(lv_scr_act());lv_obj_add_flag(btn, LV_OBJ_FLAG_CHECKABLE);lv_obj_add_event_cb(btn, event_cb, LV_EVENT_VALUE_CHANGED, NULL);
}

开关基础使用方法:

lv_obj_t* switch1 = lv_switch_create(lv_scr_act());

为开关部件配置颜色:

开关部件共有三个部分可以单独配置颜色,主体是指未被选中状态(下图中灰色),手柄指的是圆球部分,指示器则是选中部分(下图中蓝色)。

    lv_obj_t* switch1 = lv_switch_create(lv_scr_act());lv_obj_set_style_bg_color(switch1, lv_color_hex(0xea1b1b), LV_PART_MAIN);lv_obj_set_pos(switch1, 0, 0);lv_obj_t* switch2 = lv_switch_create(lv_scr_act());lv_obj_set_style_bg_color(switch2, lv_color_hex(0xea1b1b),LV_PART_KNOB);lv_obj_set_pos(switch2, 0, 50);lv_obj_t* switch3 = lv_switch_create(lv_scr_act());lv_obj_set_style_bg_color(switch3, lv_color_hex(0xea1b1b), LV_STATE_CHECKED|LV_PART_INDICATOR);lv_obj_set_pos(switch3, 0, 100);

 

 值得注意的是,在设置 LV_PART_INDICATOR 指示器时,完整的写法应与上 LV_STATE_CHECKED,不然配置的样式就会被覆盖,导致不生效。

 lv_obj_set_style_bg_color(switch3, lv_color_hex(0xea1b1b), LV_STATE_CHECKED|LV_PART_INDICATOR);

修改开关状态:

按钮状态默认是关闭的,如果我们使用 lv_obj_add_state() 函数即可为按钮添加一个选中的状态,这样他在第一次运行时就是打开状态。

lv_obj_t* switch1 = lv_switch_create(lv_scr_act());
lv_obj_set_pos(switch1, 0, 0);lv_obj_t* switch2 = lv_switch_create(lv_scr_act());
lv_obj_add_state(switch2, LV_STATE_CHECKED);
lv_obj_set_pos(switch2, 0, 50);

 如果要让按钮不被选中,我们可以再移除这个状态:lv_obj_clear_state() 即可做到

lv_obj_clear_state(switch2, LV_STATE_CHECKED);

 除了修改 LV_STATE_CHECKED 状态外,另一个 LV_STATE_DISABLED 状态也经常使用,他的作用的使得按钮不能被修改。

捕捉按钮状态:

lv_obj_has_state() 函数可以返回当前组件的状态。在以下代码中,我们使用了:

lv_obj_has_state(switch1, LV_STATE_CHECKED)

来返回选中状态。其原理是检查 LV_STATE_CHECKED 的状态判断的。

static void event_cb(lv_event_t* e) {lv_event_code_t code = lv_event_get_code(e);if (lv_obj_has_state(switch1, LV_STATE_CHECKED)) {printf("LED ON \n");}else {printf("LED OFF \n");}
}void my_gui(void) {switch1 = lv_switch_create(lv_scr_act());lv_obj_add_event_cb(switch1, event_cb, LV_EVENT_VALUE_CHANGED, NULL); //对象的值改变即触发回调
}

效果如下: 

互斥锁案例:

static void event_cb(lv_event_t* e) {lv_obj_t* target = lv_event_get_target(e); //获得触发的基本对象if (target == switch1) {if (lv_obj_has_state(switch1, LV_STATE_CHECKED)) lv_obj_clear_state(switch2, LV_STATE_CHECKED);else lv_obj_add_state(switch2, LV_STATE_CHECKED);}if (target == switch2) {if (lv_obj_has_state(switch2, LV_STATE_CHECKED)) lv_obj_clear_state(switch1, LV_STATE_CHECKED);else lv_obj_add_state(switch1, LV_STATE_CHECKED);}
}void my_gui(void) {switch1 = lv_switch_create(lv_scr_act());lv_obj_add_event_cb(switch1, event_cb, LV_EVENT_VALUE_CHANGED, NULL);switch2 = lv_switch_create(lv_scr_act());lv_obj_add_state(switch2, LV_STATE_CHECKED);lv_obj_set_pos(switch2, 0, 50);lv_obj_add_event_cb(switch2, event_cb, LV_EVENT_VALUE_CHANGED, NULL);
}

 原理是当设置了一个按钮之后,就对另一个按钮通过配置 lv_obj_add_state() 和 lv_obj_clear_state() 做出与之相反的动作。

 

http://www.tj-hxxt.cn/news/28292.html

相关文章:

  • 外包app公司不给源代码排名优化方案
  • 网站开发设计比较好的公司西安seo培训学校
  • 网站开发常见bug短视频搜索seo
  • h5网站建设方案.doc优化关键词首页排行榜
  • 市场营销产品推广策划方案seo的中文含义
  • 装修设计排行榜前十名网站优化资源
  • 做网站先建立模型网站要怎么创建
  • 做门户网站预算谷歌seo
  • 文章类网站选什么内容如何免费推广自己的网站
  • 山东省作风建设网站在百度做广告多少钱
  • 社区推广的营销推广方式优化技术基础
  • c#做的网站怎么上传图片公司网站建设价格
  • 做网站首页有什么关键词搜索数据
  • 网站建设先学什么seo排名优化培训
  • wordpress增加搜索框福州短视频seo网站
  • 做网站 嵌入支付sem是什么的缩写
  • 网站建设cach目录某网站搜索引擎优化
  • 毛片a做片在线观看网站有哪些企业培训平台
  • drupal 和wordpress深圳专业seo
  • 合肥网站设计品牌三只松鼠搜索引擎推广
  • 个人网站主页设计做网站的步骤
  • 营销网站制作比较好的百度外包公司有哪些
  • 昆明网站建设哪家比较好互联网销售
  • ps网站设计怎么做读书网站排名
  • 云主机怎么装网站it培训机构口碑排名
  • wordpress 动态网站模板下载地址北京营销公司排行榜
  • 电线电缆技术支持中山网站建设上海搜索引擎优化1
  • wordpress 主题 打包 appseo怎么去优化
  • java和PHP做网站哪个好6最吸引人的营销广告词
  • 常州做网站找哪家好seo入口