DELPHI-TreeView与数据库的使用.doc

上传人:自*** 文档编号:126175285 上传时间:2020-03-22 格式:DOC 页数:3 大小:39.45KB
返回 下载 相关 举报
DELPHI-TreeView与数据库的使用.doc_第1页
第1页 / 共3页
DELPHI-TreeView与数据库的使用.doc_第2页
第2页 / 共3页
DELPHI-TreeView与数据库的使用.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《DELPHI-TreeView与数据库的使用.doc》由会员分享,可在线阅读,更多相关《DELPHI-TreeView与数据库的使用.doc(3页珍藏版)》请在金锄头文库上搜索。

1、编程DELPHI-TreeView与数据库的使用 /写一个过程procedure Tf_Serch.DrawTree;var i: Integer; Nodeo: TTreeNode;begin /打开一个表with dm.qTempQ do begin Close; SQL.Clear; SQL.Add(select * from t_class order by 编号); Open; end;/打开第二个表 with dm.qKid do begin Close; SQL.Clear; SQL.Add(select * from t_kid order by 班级编号); Open; en

2、d;/清空列表 RzTreeView1.Items.Clear;/如果第一个表有数据 if not dm.qTempQ.Eof then begin/设置列表自动打开 RzTreeView1.AutoExpand := true;/设置列表为只读 RzTreeView1.ReadOnly := true;/增加一个节点,来源是第一个表的合计数和第二个表的合计数 Nodeo := RzTreeView1.Items.AddFirst(nil, 班级数 + IntToStr(dm.qTempQ.RecordCount) + 个 + IntToStr(dm.qKid.RecordCount) + 人

3、); /以第一个表的记录个数进行循环增加子节点 for i := 0 to dm.qTempQ.RecordCount - 1 do begin/打开第三个表,与第二个表相同 with dm.qTemp1 do begin Close; SQL.Clear; SQL.Add(select * from t_kid); Open;/不同的是,这个表过滤数据 Filtered := false; Filter := 班级编号 = + QuotedStr(dm.qTempQ.FieldByName(编号).AsString); Filtered := true; end;/增加子节点,来源是第一个表

4、某字段的记录和第三个表的合计数 RzTreeView1.Items.AddChild(Nodeo, + IntToStr(dm.qTemp1.RecordCount) + 人 + dm.qTempQ.FieldByName(名称).Asstring);/第一个表的下一条 dm.qTempQ.Next; end; end; if RzTreeView1.Enabled then RzTreeView1.SetFocus;end;/CLICK事件procedure Tf_Serch.RzTreeView1Click(Sender: TObject);var StrPos: string; intP

5、os: Integer;begin/如果列表没有节点则退出 if RzTreeView1.Items.GetFirstNode = nil then Exit;/以选择节点的变量判断使用什么表,这个是已知第一个节点的变量是何值,对其进行判断,如果节点则调用一个表后并退出 if Pos(班级数, RzTreeView1.Selected.Text) 0 then begin dm.qTempQ.Close; dm.qTempQ.SQL.Clear; dm.qTempQ.SQL.LoadFromFile(binselclass.sql); dm.qTempQ.SQL.Add(group by 姓名

6、); dm.qTempQ.Open; with dm.qMTT do begin Close; SQL.Clear; SQL.LoadFromFile(binselIO.sql); SQL.Add(group by 姓名); Open; end; Exit; end;/得到选择的节点的变量 StrPos := RzTreeView1.Selected.Text;/对变量进行判断 intPos := pos(,StrPos);/获得一个变量 StrPos := Copy(StrPos, intPos+1, Length(StrPos)-intPos);/依上个变量值调用表灵气 with dm.q

7、Temp2 do begin Close; SQL.Clear; SQL.Add(select * from t_class where 名称= + StrPos + ); Open; StrPos := fieldbyname(编号).AsString; end;/上面的调用是两表主键的使用,与treeview无关,调用出的数据在dbgrid中显示 with dm.qTempQ do begin Close; SQL.Clear; SQL.LoadFromFile(binselclass.sql); SQL.Add(where 班级编号= + StrPos + ); SQL.Add( and 时间=:d1 and 时间= + RzDateTimeEdit1.text + ); sql.add( and 日期时间= + RzDateTimeEdit2.text + ); SQL.Add( group by 姓名); Open; end;end;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > IT计算机/网络 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号