如何从DBGRID的某一列的某一行中输入一个字符串然后 回车,用输入的字符串做为参数,并在QUERY1的SQL中执行SELECT * FROM TABLE WHERE FIELD LIKE : 参数+'%'
我是在DBGRIDEH的ON KEY PRESS事件中用的
dm.Q_getsp.SQL.Add('select 0 as shl,spbh,spmch,shpgg,hshjj,shpchd from spkfk 
  where (spbh like :sp or zjm like :spzjm or spmch like :spm) ');
  dm.Q_getsp.SQL.Add('and beactive=''是''');
  dm.Q_getsp.ParamByName('sp').AsString:=dbgrideh_djdetail.Fields[4].text+'%';  //参数类型问题
  showmessage(dbgrideh_djdetail.SelectedField.text+'%');
  showmessage(dbgrideh_djdetail.SelectedField.DisplayText+'%');
  showmessage(dbgrideh_djdetail.SelectedField.DefaultExpression+'%');
  dm.Q_getsp.ParamByName('spzjm').AsString:=dbgrideh_djdetail.SelectedField.Text+'%';
  dm.Q_getsp.ParamByName('spm').AsString:=dbgrideh_djdetail.SelectedField.Text+'%';
在SHOWMESSAGE时只能返回字段的名称或只有一个%
用dm.Q_getsp.ParamByName('spzjm').AsString:=dbgrideh_djdetail.SelectedField.value+'%';时DELPHI提示 Invalid variant type conversion 
我应该用什么属性可方法把我要的字符串做为参数传给DELPHI 呢?请给一句代码。