直接上代码。写手机群控时用到的。可惜原生控件不让我改颜色。只能弃之不用了。
import win.ui; /*DSG{{*/ var winform = win.form(text=" 顺序列表 ";right=991;bottom=527) winform.add( button={cls="button";text="全选(&A)";left=656;top=480;right=816;bottom=520;db=1;dr=1;z=3}; button2={cls="button";text="取消全选(&C)";left=824;top=480;right=984;bottom=520;db=1;dr=1;z=4}; button3={cls="button";text="弹框提示(&T)";left=8;top=480;right=136;bottom=520;db=1;dr=1;z=6}; cb1={cls="checkbox";text="11号机";left=536;top=488;right=640;bottom=512;bgcolor=16777215;color=255;font=LOGFONT(h=-16;name='微软雅黑');z=2}; map={cls="custom";text="自定义控件";left=8;top=8;right=984;bottom=472;bgcolor=16777215;db=1;dl=1;dr=1;dt=1;z=1}; scrollbar={cls="scrollbar";left=1000;top=256;right=1056;bottom=368;edge=1;z=5} ) /*}}*/ var mpxy={};//x,y,width,height,text,indexId : {105,210,55,35,"M0101",1} //定义控件属性 var mcount=0;//记录控件数量 var w = 90; var h = 50; var mxy={ }; //定义控件起始显示区域 for(i=1;10;1){ table.push( mxy, { 30, 20+(i-1)*h, w, h } ); } initmpxy=function(xy){ var d=0; var id=0; for( a=1;#mxy;1 ){ for(i=1;10;1){ d=(i-1)*xy[a][3]; id++; num = (a-1)*10 + i; table.push(mpxy,{ xy[a][1]+d, xy[a][2], xy[a][3], xy[a][4], num+"号机",num}) } } mcount=id; }//初始化控件区域和位置 initmpxy(mxy); //在可视控件内动态添加控件和事件 var bt=""; for(i=1;mcount;1){ bt=mpxy[i][5]; winform.map.addCtrl( [bt]={ cls="checkbox";text=mpxy[i][5];left=mpxy[i][1]+1;top=mpxy[i][2];right=mpxy[i][1]-2+mpxy[i][3];bottom=mpxy[i][2]+mpxy[i][4];id=i+300; autoResize=true;bgcolor=16777215;font=LOGFONT(h=-18;name='微软雅黑'); oncommand=function(id,event){ winform.msgbox( mpxy[i][6]+"号机" ); } } ); } winform.show(); win.loopMessage(); return winform;
完活,直接运行就可以了。
发表评论