搬家第24天-citectv7.4microsoftflexgrid写入access数据表内容
如果我们需要把access数据表内容显示在microsoft flexgrid 中。
在cicode中添加以下代码:
FUNCTION ConnAccess()
OBJECT hFlexgrid;
INT hsql,hrec,hrowcount,i;
STRING sSQL,sNumber,sName,sSex,sAge,sHight,sWeight;
hFlexGrid=ObjectByName("AN9");
hsql = SQLConnect("DSN=myaccess;UID=;PWD=");
IF hsql=-1 THEN
Message("注意","连接Mydatabase数据库失败",0);
ELSE
sSQL="select * from mytable";
hrec=SQLGetRecordset(hsql,ssql);
hrowcount=SQLRowCount(hrec);
//初始化表格,写字段名
_ObjectSetProperty(hFlexGrid,"rows",hrowcount+1);
_ObjectSetProperty(hFlexGrid,"cols",7);
_ObjectSetProperty(hFlexGrid,"row",0);
_ObjectSetProperty(hFlexGrid,"col",1);
_ObjectSetProperty(hFlexGrid,"Text","学号");
_ObjectSetProperty(hFlexGrid,"col",2);
_ObjectSetProperty(hFlexGrid,"Text","姓名");
_ObjectSetProperty(hFlexGrid,"col",3);
_ObjectSetProperty(hFlexGrid,"Text","性别");
_ObjectSetProperty(hFlexGrid,"col",4);
_ObjectSetProperty(hFlexGrid,"Text","年龄");
_ObjectSetProperty(hFlexGrid,"col",5);
_ObjectSetProperty(hFlexGrid,"Text","身高");
_ObjectSetProperty(hFlexGrid,"col",6);
_ObjectSetProperty(hFlexGrid,"Text","体重");
//开始填入表格
FOR i=0 TO hrowcount - 1 DO
sNumber=SQLGetField(hRec, "学号", i);
sName=SQLGetField(hRec, "姓名", i);
sSex=SQLGetField(hRec, "性别", i);
sAge=SQLGetField(hRec, "年龄", i);
sHight=SQLGetField(hRec, "身高", i);
sWeight=SQLGetField(hRec, "体重", i);
_ObjectSetProperty(hFlexGrid,"row",i+1);
_ObjectSetProperty(hFlexGrid,"col",1);
_ObjectSetProperty(hFlexGrid,"Text",sNumber);
_ObjectSetProperty(hFlexGrid,"col",2);
_ObjectSetProperty(hFlexGrid,"Text",sName);
_ObjectSetProperty(hFlexGrid,"col",3);
_ObjectSetProperty(hFlexGrid,"Text",sSex);
_ObjectSetProperty(hFlexGrid,"col",4);
_ObjectSetProperty(hFlexGrid,"Text",sAge);
_ObjectSetProperty(hFlexGrid,"col",5);
_ObjectSetProperty(hFlexGrid,"Text",sHight);
_ObjectSetProperty(hFlexGrid,"col",6);
_ObjectSetProperty(hFlexGrid,"Text",sWeight);
END
SQLDisconnect(hsql);
END
END
在页面按钮加入以下脚本:
ConnAccess();
保存编译运行,就能看到效果了