硬汉嵌入式论坛

 找回密码
 立即注册
查看: 5677|回复: 3
收起左侧

[ThreadX全家桶] GUIX vertical list 刷新的问题

[复制链接]

58

主题

267

回帖

446

积分

高级会员

积分
446
发表于 2020-12-26 09:56:24 | 显示全部楼层 |阅读模式
使用GUIX的 vertical list 有个需求是新增和删除项。
当项目新增和删除后,需要整体刷新当前显示的列表项,怎样能触发 vertical list 控件的自动刷新。

目前的情况是只有滚动列表一遍,才能在每个项显示出来的时候刷新,不动就不刷新。


回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115804
QQ
发表于 2020-12-26 14:57:03 | 显示全部楼层
这个控件还没有测试过,回头我试试
回复

使用道具 举报

58

主题

267

回帖

446

积分

高级会员

积分
446
 楼主| 发表于 2020-12-26 17:59:41 | 显示全部楼层
eric2013 发表于 2020-12-26 14:57
这个控件还没有测试过,回头我试试

好像通过设置 dirty 不能刷新。我自己写了个刷新函数,实测可用。
硬汉可以参考一下,节省宝贵的研究时间。
/*
    刷新整个列表
*/
void utility_vertical_list_update(GX_VERTICAL_LIST *list, VOID (*update)(GX_VERTICAL_LIST*, GX_WIDGET*, INT))
{
    GX_WIDGET* child;
    int index;

    if((list == 0) || (update == 0))
    {
        return;
    }

    index = list->gx_vertical_list_top_index;
    child = _gx_widget_first_client_child_get((GX_WIDGET*)list);
    while(child)
    {
        update(list, child, index);
        index++;
        child = _gx_widget_next_client_child_get(child);
    }
}

其中参数 update 是 vertical list 控件的 row 刷新函数。

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115804
QQ
发表于 2020-12-28 08:06:17 | 显示全部楼层
ihavedone 发表于 2020-12-26 17:59
好像通过设置 dirty 不能刷新。我自己写了个刷新函数,实测可用。
硬汉可以参考一下,节省宝贵的研究时 ...

好的,谢谢。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-5-20 06:56 , Processed in 0.216997 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表