代码如下
import win.ui;
import godking.vlistEx;
import sqlite;
mainForm = win.form(text="vlistEx - table adapter";right=849;bottom=578)
mainForm.add(
vlist={cls="vlistEx";left=10;top=10;right=840;bottom=570;db=1;dl=1;dr=1;dt=1;edge=1;transparent=1;z=1}
)
var db = sqlite("D:\aardio\project\aardio工程24\db.db")
var t = { fields={"序号","姓名","电话","地址","身份证"} };
mainForm.vlist.setTable(db.getTable("SELECT * FROM filea"),{"序号","姓名","电话","地址","身份证"},{80,120,120,350,100},1, )
mainForm.vlist.hideLineV = {2,3}
mainForm.vlist.onClick = function(row,col,x,y){
if col==2 or col==3 or col==4 {
mainForm.vlist.setCellColor(row,2,,null);
mainForm.vlist.setCellColor(row,3,,null);
mainForm.vlist.setCellColor(row,4,,null);
mainForm.vlist.setCellColor(row,col,,({0,0xAAAAFF,0xFFAAAA,0xAAFFAA})[col]);
mainForm.vlist.redraw();
}
}
mainForm.vlist.onDrawCellBg = function(row,col,hdc,rc,bkcolor,text){
if col==2 or col==3{
gdi.selectPen(
function(hdc,pen){
gdi.drawLine(hdc,rc.right,rc.top,rc.right,rc.bottom)
},hdc,0xDDDDDD,0x000000)
}
return true;
}
mainForm.vlist.checkBox.show = true;
mainForm.vlist.textColor = 0xFF0000;
mainForm.vlist.setHeaderHeight(50);
mainForm.vlist.headerAlign = 1;
mainForm.vlist.lineColorH = 0x008800;
mainForm.vlist.lineColorV = 0xBB9999;
mainForm.vlist.fillParent();
mainForm.vlist.onEditBegin = true;
mainForm.vlist.onEditEnd = function(row,col,text){
if col==3 {
var r = ..tostring((..tonumber(text)):0);
if r!=text {
..win.msgbox(text++" 将转为:"++r);
return r;
}
}
return true;
}
mainForm.vlist.onSortColumn = function(col,desc){
owner.sort( col, desc, 0 ,false );
}
var listpopmenu = win.ui.popmenu(mainForm);
listpopmenu.add("删除",function(id){
mainForm.vlist.delRow(mainForm.vlist.getSelected());
});
listpopmenu.add("新增",function(id){
mainForm.vlist.addRow("[@rowindex]","1","2","3","等待中");
});
listpopmenu.add("清空",function(id){
});
mainForm.vlist.onRClick = function(row,col){
var x,y = win.getCursorPos();
listpopmenu.popup(x,y,true);
}
mainForm.show();
win.loopMessage();