给你示例: procedure Tf_shifu.ComboBox1Change(Sender: TObject); begin if combobox1.Text<>'所有' then begin adot.Filter:='车间='+combobox1.Text; adot.Filtered:=true; end else begin adot.Filter:=''; adot.Filtered:=false; end; end;
where code like 4419+'%' and name like ''%'+edit1.Text+'%''帮我看一下。这个句中。为何我编绎不到呢?
在COMBOBOX的ONCHANGE里面写SQL也可以
where code like '4419%' and name like ''%'+edit1.Text+'%''
建议使用DBLookupComboBoxEh,就是Ehlib里的一个控件
希望在里面加入一些名字 。 在你加名字的控件的OnChange事件里写代码,把DBLookupComboBoxEh的LISTSource的记录集的COMMANDText重新设置一下,或者直接给参数过去即可。 比如:ADODATASET1.CommandText := 'Select cCode,cName From Table where cName = :name'; ADODATASET1.Paramaters.parabyname('Name').value := onchange控件.text; ADODATASET1.Open 或者ADODATASET1.Requery.;
procedure Tf_shifu.ComboBox1Change(Sender: TObject);
begin
if combobox1.Text<>'所有' then
begin
adot.Filter:='车间='+combobox1.Text;
adot.Filtered:=true;
end
else
begin
adot.Filter:='';
adot.Filtered:=false;
end;
end;
在你加名字的控件的OnChange事件里写代码,把DBLookupComboBoxEh的LISTSource的记录集的COMMANDText重新设置一下,或者直接给参数过去即可。
比如:ADODATASET1.CommandText := 'Select cCode,cName From Table where cName = :name';
ADODATASET1.Paramaters.parabyname('Name').value := onchange控件.text;
ADODATASET1.Open 或者ADODATASET1.Requery.;