我刚学Dephi不久,现在正在做一个数据库查询模块,数据库组件用的是ADODataSet,窗体中设置了一些TEdit编辑框让用户输入查询条件,然后根据这些查询条件更新DBGrid组件中的数据。请问各位大侠,如何设置TEdit或DBGrid的事件,使得用户一输完查询条件,就自动更新DBGrid中的数据?

解决方案 »

  1.   

    onenter事件也可以。根据edit.text生成语句就可以了。
      

  2.   

    还是让用户输入回车你在取数比较好  不然会累死  onkeypress里面判断吧
      

  3.   

    你都说了是在“用户一输完查询条件”之后了当然是在OnExit事件中,加入code好了!
      

  4.   

    onenter我试过,但是输完了没有反应!
      

  5.   

    我在onexit事件中加入了如下代码:
      ksrq:=Edit1.Text;
      jzrq:=Edit2.Text;
      ADODataSet2.Close;
      ADODataSet2.CommandText:='select * from listsl'+dwmc+' where 实收日期<='''+jzrq+''' and 实收日期>='''+ksrq+'''';
      ADODataSet2.Open;
    但是输完了还是得点一下DBGird组件数据才能更新!
      

  6.   

    用activecontrol不可以实现这个功能吗?
      

  7.   

    我想这种有点类似于轮旬。
    数据集要不断的轮旬TEDIT,判断其是否能组合成一个SQL语句,
    真到能组成,
    又断判下次。
      

  8.   

    干脆在OnChange事件里写,反正你又不止到客户要输多长数据!