- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
delphi实验9报告册
实验九
实验题目:常用数据库组件程序设计
图片是Graphic字段内容;图片下的文字是Common_Name字段内容;右面的文字框内是Notes字段(备注类型)内容;最下面的DBGrid表格,显示所有字段内容。最上面输入框中输入“Species No”值,单击“查询”按钮,可以进行记录定位。“查询”按钮右面的四个按钮,可以进行记录导航。
实验步骤:
程序界面设计;
Hint= scroll grid below to see other fish
数据库链接
相关按钮编程。
“输出到EXCEL” 按钮事件主要代码:
var
eclapp,workbook:variant;
i,j:integer;
begin
eclapp:=createoleobject(excel.application);
workbook:=createoleobject(excel.sheey);
workbook:=eclapp.workbooks.add;
with dbgrid1 do {insert table header}
for i :=1 to columns.count do
eclapp.cells[1,i].value:=columns[i-1].title.caption;
table1.first;
i:=2;
while not table1.eof do {process all record}
begin
with dbgrid1 do {process one record}
for j:=1 to columns.count do
eclapp.cells[i,j].value:=columns[j-1].field.displaytext;
i:=i+1;
table1.next;
end;
eclapp.visible:=true;
隔行改变DBGrid网格颜色 :在DBGrid组件的OnDrawColumnCell事件中编写代码:
if gdSelected in State then Exit; //隔行改变网格背景色:
if table1.RecNo mod 2 = 0 then
(Sender as TDBGrid).Canvas.Brush.Color := clinfobk //定义背景颜色
else
(Sender as TDBGrid).Canvas.Brush.Color := RGB(191, 255, 223); //定义背景颜色
//定义网格线的颜色:
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
with (Sender as TDBGrid).Canvas do //画 cell 的边框
begin
Pen.Color := $00ff0000; //定义画笔颜色(蓝色)
MoveTo(Rect.Left, Rect.Bottom); //画笔定位
LineTo(Rect.Right, Rect.Bottom); //画蓝色的横线
Pen.Color := clbtnface; //定义画笔颜色(兰色)
MoveTo(Rect.Right, Rect.Top); //画笔定位
LineTo(Rect.Right, Rect.Bottom); //画绿色
End;
模糊查询代码:
if(edit1.text=)then
showmessage(查询条件不能为空)
if not table1.Locate(Species No,edit1.Text ,[lopartialkey])then
showmessage(没找到相应的记录)
文档评论(0)