list_layout.ini说明

#到这一行尾是注释

#dm_root_type表示DataModel的根节点类型,
#即根节点类型表示整个DataModel树的类型,
#如果没有写dm_root_type,就表示默认的根节点类型
dm_root_type={

    #w=
    #h=

    #dm_type是DataModel的节点的类型, 
    #即不同类型的节点可以有不同的排版
    #没有dm_type就表示默认的节点类型
        dm_type={
                w=n #整数,像素值
                h=n
                style="xxx" #节点显示的风格
        zoom=w_pixel+h_pixel #节点大小的缩放方式
        layout=wrap_down #布局的方式,见下面说明

        expand_x=0;  #展开到下一级子节点时,
        expand_y=0;  #调整排版字节点的起始
        expand_w=10; #位置和大小.
        expand_h=10;

        #DataModel中每个节点的值都是一个table
        #可以同时显示table中的多个子项
                {
            value_key="xxx" #字符串表示对应table的子项key, 
                    #没有value_key就表示不对应table子项
            is_image #如果该子项的值是整数,那么作为图片的id
            is_expand #表示展开状态
            x=n #整数,像素值,相对Node的位置和大小
            y=n
            w=n
            h=n
            style="xxx" #该子项显示的风格
            caption="xxx" #
            widget={ #用一个控件来显示该子项(这样才可以修改子项的值)
                type=id("process") #控件类型
                flags= #控件标记
                min=0 #控件的属性,不同类型的控件支持的属性不同
                max=1
            }
                }

                #other item
        #不同的item可以显示相同的value_key子项
        }
}

#布局决定外观
#root_type 决定全局的布局,
#node_type 决定节点的布局,

#一旦datamodel 和listview 绑定, root_type 不能改变
#但是在绑定时root_type 可以灵活设置

#这种设计提供了最常用的折中的灵活性。

#关于排版的zoom (放大缩小)
#node 可以设置wh 按照dpi 还是pixel 缩放.
#item 一律按照node 的比例(pixel) 进行缩放

#节点大小的缩放方式:
#  (默认方式)根据控件的dpi缩放
#  w_pixel: 先dpi缩放,再按(控件的w/root_type的w)的值比例缩放
#            root_type的w也会先按dpi缩放
#  h_pixel: 先dpi缩放,再按(控件的h/root_type的_h)的值比例缩放
#            root_type的h也会先按dpi缩放
#节点的大小决定后,节点中子项的显示位置和大小都按比例缩放

#布局方式:
#  wrap_down: 向下换行
#  right_autowrap_down: 右边放置,自动向下换行
#  right_nowrap: 右边放置,不换行
#  wrap_right: 向右换行
#  down_autowrap_right: 下边放置,自动向右换行
#  down_nowrap: 下边放置,不换行

#如果是控件,根据不同的控件类型可以设置部分属性
#type=id("processbar");
#min=n;
#max=n;
#
#type=id("bool_button");
#radio_group="name";
#
原文地址:https://www.cnblogs.com/senior-engineer/p/14334887.html