Foper_no 2023-03-25 11:18 采纳率: 66.7%
浏览 42
已结题

这是用了lvgl中的滚筒roller控件,我想把中间那个蓝色的框去掉应该怎么做呢,更深一步还想在滑到中间位置时改变字体颜色与大小

这是用了lvgl中的滚筒roller控件,我想把中间那个蓝色的框去掉应该怎么做呢,更深一步还想在滑到中间位置时改变字体颜色与大小。

img

  • 写回答

2条回答 默认 最新

  • JoseKe 2023-03-26 06:01
    关注
    要去掉滚筒roller控件中间的蓝色框,可以通过设置控件的样式来实现。具体步骤如下:
    1. 找到滚筒roller控件的样式表,可以通过lv_style_t结构体来定义样式。
    2. 在样式表中设置控件的背景颜色为透明,可以使用lv_style_set_bg_opa(style, LV_OPA_TRANSP)来实现。
    3. 设置控件的边框颜色为透明,可以使用lv_style_set_border_opa(style, LV_OPA_TRANSP)来实现。
    4. 设置控件的指示器颜色为透明,可以使用lv_style_set_indic_opa(style, LV_OPA_TRANSP)来实现。
    5. 设置控件的选中状态颜色为透明,可以使用lv_style_set_sel_color(style, LV_COLOR_TRANSP)来实现。
    6. 如果想要在滑到中间位置时改变字体颜色与大小,可以通过设置控件的回调函数来实现。具体步骤如下:
    7. 找到滚筒roller控件的回调函数,可以使用lv_obj_set_event_cb(obj, event_cb)来设置回调函数。
    8. 在回调函数中判断控件的状态,如果滑到中间位置,则改变字体颜色与大小。
    9. 可以使用lv_obj_get_style_text_font(obj, LV_PART_SELECTED)来获取选中状态下的字体,使用lv_obj_set_style_text_font(obj, LV_PART_SELECTED, font)来设置选中状态下的字体。
    10. 可以使用lv_obj_get_style_text_color(obj, LV_PART_SELECTED)来获取选中状态下的字体颜色,使用lv_obj_set_style_text_color(obj, LV_PART_SELECTED, color)来设置选中状态下的字体颜色。
    综上所述,要去掉滚筒roller控件中间的蓝色框并在滑到中间位置时改变字体颜色与大小,可以通过设置控件的样式和回调函数来实现。
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月28日
  • 已采纳回答 4月20日
  • 创建了问题 3月25日

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助