setTable 设置列与数据的基本方法

光庆 11小时前 24

import win.ui;
import godking.vlistEx;
/*DSG{{*/
mainForm = win.form(text="vlistEx - table adapter";right=929;bottom=515)
mainForm.add({
vlist={cls="vlistEx";left=8;top=8;right=308;bottom=504;border=1;db=1;dl=1;dr=1;dt=1;z=1};
vlistEx={cls="vlistEx";left=315;top=10;right=615;bottom=506;border=1;db=1;dl=1;dr=1;dt=1;z=2};
vlistEx2={cls="vlistEx";left=620;top=10;right=920;bottom=506;border=1;db=1;dl=1;dr=1;dt=1;z=3}
})
/*}}*/

var fields={"序号","姓名","年龄","性别"};

// 方法1,使用字典:
var t1 = { fields=fields};
for(i=1;10;1){
    var tt={};
    tt["序号"]="[@rowindex]";  // 行序号标记是不允许编辑修改的
    tt["姓名"] = string.random(1,"卢张王李赵刘")++string.random(2,"阿斯顿发生发生发娜与一体");
    tt["年龄"] = ..math.random(1,99);
    tt["性别"] = ..math.random(0,1)?"男":"女";
    ..table.push(t1,tt);
}
mainForm.vlist.setTable(t1 /*数据表*/,/*列标题*/,/*列宽*/,1/*0左1中2右*/,/*转数组*/,/*转Utf8*/,/*克隆表*/,/*恢复设置*/);

// 方法2,使用数组,列与数据一次性设置:
var t2 = {};
for(i=1;10;1){
    var tt={};
    table.push(tt,"[@rowindex]");  // 行序号标记是不允许编辑修改的
    table.push(tt,string.random(1,"卢张王李赵刘")++string.random(2,"阿斯顿发生发生发娜与一体"));
    table.push(tt,..math.random(1,99));
    table.push(tt,..math.random(0,1)?"男":"女");
    ..table.push(t2,tt);
}
mainForm.vlistEx.setTable(t2 /*数据表*/,fields/*列标题*/,/*列宽*/,1/*0左1中2右*/,/*转数组*/,/*转Utf8*/,/*克隆表*/,/*恢复设置*/);

// 方法3,使用数组,先设置列:
var t3 = {};
for(i=1;10;1){
    var tt={};
    table.push(tt,"[@rowindex]");  // 行序号标记是不允许编辑修改的
    table.push(tt,string.random(1,"卢张王李赵刘")++string.random(2,"阿斯顿发生发生发娜与一体"));
    table.push(tt,..math.random(1,99));
    table.push(tt,..math.random(0,1)?"男":"女");
    ..table.push(t3,tt);
}
mainForm.vlistEx2.setColumns( fields/*列标题*/,/*列宽*/,1/*0左1中2右*/);
mainForm.vlistEx2.setTable(t3 /*数据表*/,false/*列标题*/,/*列宽*/,/*0左1中2右*/,/*转数组*/,/*转Utf8*/,/*克隆表*/,/*恢复设置*/);

mainForm.show();
win.loopMessage();


最新回复 (1)
  • 光庆 11小时前
    0 引用 2

返回