我现在有两个dbgrid,我想一个是主表,一个是明细表,每当我单击主表中的一条记录时,明细表中的记录就会显示出来,这个代码怎么写,在哪里写呀??

解决方案 »

  1.   

    可以不用写代码
    delphi上有自带例子你看一下吧
      

  2.   

    将明细表的datasocus设置成为主表的datasocus (query控件中)
    另外他们sql语句的条件参数应相同
      

  3.   

    在TForm1.DBGrid1CellClick(Column: TColumn)中写
      

  4.   

    主从表嘛
    1.把从表(DataSet/Table/Query)的DataSource设为连在主表的DataSource(其DataSet属性设置的是主表的DataSet/Table/Query);
    2.在从表的MasterField属性上双击,进行字段关联设定。
      

  5.   

    不知你连接的是TABLE 还是QUERY 或其它
    但都是一样的连接它们的从表DATESOURE 属性为主表中的DATASOURCE
      

  6.   

    query1,datasource1,dbgrid1 主
    query2,datasource2,dbgrid2 明细
    假设主表中有一字段:name是明晰表的外键
    query2.datasorece:=datasource1;
    query2.sql.text:='select * from b where student_name=:name'
      

  7.   

    在主表的afterScrol事件中更新从表内容
      

  8.   

    用两中方法可以解决:
    1,写代码
    从数据集控件.datasorece:=datasource1;(主数据源)
    从数据集控件.sql.text:='select * from b where student_name=:name'
    2,直接用控件
    把从表数据集控件的DataSource设为连在主表的DataSource
    然后在从表的数据集控件(如:clientdataset,query)MasterField属性上双击,进行字段关联设定。
    有几个关联条件就可以设置几个关联!