如何实现在DBGrid上点击一个Cell(即行和列的交叉区),下拉出另一个DBGrid,用户在其中选一行后,就会设置原DBGrid的当前字段? 
//动态生成;但代码要自己写的;
 或是让一个隐了起来,到时,写LEFT、TOP就可以了;
  不过,其中的代码还是要自己写

解决方案 »

  1.   

    你只要用使用一个Lookup字段就可以了。
      

  2.   

    DBGrid1请一直显示的网格,DBGrid2指能弹出的那个。
    -----如果如”风舞轻扬“所说,那么是哪个组件的Lookup字段?
    -----如果如“小小“所说,那么
    1.用户选中DBGrid1的一个格是什么事件?
    2.在弹出DBGrid2后,用户未选择就点窗口空白处是什么事件?
    3.DBGrid2被选中一行是什么事件?
    我先说说我的想法,请各位指正
    设DBGrid2.Options.dgRowSelect:=true
    1.DBGrid1.OnCellClick
    2.DBGrid2.OnExit   //没找到OnLoseFocus一类的事件:)
    3.DBGrid2.OnCellClick
      

  3.   

    DBGridn.OnCellClick 
    其实你已经说了呀、就在这个事件里边写就可以了//只要这一个事件;
    //当然,对于不同的dbgird要对应于不同的DBGridn.OnCellClick 
    如:
    2.在弹出DBGrid2后,用户未选择就点窗口空白处是什么事件? 
     就没有发生oncellclick事件,不用处理,或是
     再dbgird里边的dbgirdclick事件写;1.用户选中DBGrid1的一个格是什么事件? 
    就是你的ONCELLCLLICK事件;
    3.DBGrid2被选中一行是什么事件? 
    同样也是 oncellclick事件,只不过,你这时,用到的是它的行和列;
    //参数里边有;
    现在就可以啊;
      

  4.   

    我不太明白你的意思,你能不能把你的题目写的明白一点?
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    如何实现在DBGrid上点击一个Cell(即行和列的交叉区),下拉出另一个DBGrid,用户在其中选一行后,就会设置原DBGrid的当前字段? 
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
      

  5.   

    DBGrid的Column有的可以设置它的PickList字符列表,这个列的显示就成了ComboBox了。
    我想叫有的格子用户点击时弹出另一个DBGrid而不是ComboBox样子来叫用户选择。
    另:
    Table的Field类里有LookupDataset、LookupKeyFields、LookupResultFields
    、KeyFields等属性,  我想可能不通过编码也能实现吧?
     我用delphi不多,请大家请教! 先谢过了!!!
      

  6.   

    1:上边说了;
    2:双击table,不然就是右击table;
    大哥,应该结分了;
    睡觉去了~~~~~
      

  7.   

    增加一个Lookup字段,
    在DBGRID里显示该Lookup字段就可以。
    你试一下就行,很简单的。