一个表为:
产品名称 产品种类 产品类型 价值
短袖毛衣 毛织品 25X30 60
长袖毛衣 毛织品 25X60 120
长裤 纤维物质 52 6682
短衣 纤维物质 233 22
老人服装 纤维物质 232 20
袜子 丝织品 10X12 632
那么怎么在treeview中点击节点,
如:(点击毛织品,把数据库中毛织品的记录在listview显示出来)
制衣厂
--毛织品
--纤维物
--丝织品
就在listview中显示所对应的记录呢?谢谢,我没有接触过树形的,能否给我说明白点!在此谢谢拉!
产品名称 产品种类 产品类型 价值
短袖毛衣 毛织品 25X30 60
长袖毛衣 毛织品 25X60 120
长裤 纤维物质 52 6682
短衣 纤维物质 233 22
老人服装 纤维物质 232 20
袜子 丝织品 10X12 632
那么怎么在treeview中点击节点,
如:(点击毛织品,把数据库中毛织品的记录在listview显示出来)
制衣厂
--毛织品
--纤维物
--丝织品
就在listview中显示所对应的记录呢?谢谢,我没有接触过树形的,能否给我说明白点!在此谢谢拉!
窗体建立的时候,从数据库中读出产品种类,构件tree的节点,点击tree的节点的,根据节点的text或者其它的东西(如:编号),来根据得到的内容查询数据库,把的到的记录写到listview上,我一般用dbgrid,简单.
选中那个结点就是Treeview1.selected.text就是了
-------------------------------------------------------------
寻寻寻,寻斑竹小小在线
如果您觉的您对Delphi 感兴趣或是很想学的更好些或者是对Delphi 有更深的认识,我们可以一起交流;
呵呵
www.nxrs.net/bbs
谢谢,别抛砖
-----------------------------------------------------------------
声明:在那儿交流都一样的,我现在还是认为Csdn是最好的,呵呵
var sql:String;
begin
Sql:='select * from table where 产品种类='+Node.Text;
Query1.Close;
Query1.Sql.Clear;
Query1.Sql.Add(sql);
Query1.Open;
//其它的就是从Query1中取数据填充ListView了
end;
上有对TreeView的详细操作,而且都是源代码;
你可以去看一看;
卖个乖
-------------------------------------------------------------
寻寻寻,寻斑竹小小在线
如果您觉的您对Delphi 感兴趣或是很想学的更好些或者是对Delphi 有更深的认识,我们可以一起交流;
呵呵
www.nxrs.net/bbs
谢谢,别抛砖
-----------------------------------------------------------------
声明:在那儿交流都一样的,我现在还是认为Csdn是最好的,呵呵
procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);
var
NewItem:Tlistitem;
begin
listview1.Items.BeginUpdate;
listview1.Items.Clear;
if node.Level=1 then
begin
with adoquery1 do
begin
close;
sql.Clear;
sql.Add('select * from 产品种类 where gdzczl='''+treeview1.Selected.Text+'''');
open;
NewItem:=ListView1.Items.Add;
NewItem.Caption:=ADOQuery1.fieldbyname('gdzcbh').Value;
NewItem.SubItems.Add(ADOQuery1.fieldbyname('gdzczl').Value);
NewItem.SubItems.Add(ADOQuery1.fieldbyname('gdzcmc').Value);
end;
end;
listview1.Items.EndUpdate;
var
NewItem:Tlistitem;
begin
listview1.Items.BeginUpdate;
listview1.Items.Clear;
if node.Level=1 then
begin
while not adoquery1.eof do
begin
with adoquery1 do
begin
close;
sql.Clear;
sql.Add('select * from 产品种类 where gdzczl='''+treeview1.Selected.Text+'''');
open;
NewItem:=ListView1.Items.Add;
NewItem.Caption:=ADOQuery1.fieldbyname('gdzcbh').Value;
NewItem.SubItems.Add(ADOQuery1.fieldbyname('gdzczl').Value);
NewItem.SubItems.Add(ADOQuery1.fieldbyname('gdzcmc').Value);
end;
end;
adoquery1.next ;
end;
listview1.Items.EndUpdate;
procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);
var
NewItem:Tlistitem;
begin
listview1.Items.BeginUpdate;
listview1.Items.Clear;
if node.Level=1 then
begin
while not adoquery1.eof do
begin
with adoquery1 do
begin
close;
sql.Clear;
sql.Add('select * from 产品种类 where gdzczl='''+treeview1.Selected.Text+'''');
open;
NewItem:=ListView1.Items.Add;
NewItem.Caption:=ADOQuery1.fieldbyname('gdzcbh').Value;
NewItem.SubItems.Add(ADOQuery1.fieldbyname('gdzczl').Value);
NewItem.SubItems.Add(ADOQuery1.fieldbyname('gdzcmc').Value);
end;
adoquery1.next ;
end;
end;
listview1.Items.EndUpdate;
end;