Como lo que vas a construir es una cadena, es fácil, recorres los checkboxes:
Por ejemplo:
Código:
var
cadSql:String;
nCont:Integer;
begin
nCont:=0;
if CheckBox1.Checked then
begin
CadSql:='MiCampo1 ='+QuotedStr(Edit1.Text);
nCont:=nCont + 1;
end
if CheckBox2.Checked then
if nCont > 0 then
CadSql:=+CadSql+' And ';
CadSql:=+CadSql+'MiCampo1 ='+QuotedStr(Edit2.Text);
nCont:=nCont + 1;
end
.....
cadSql:=CadSql +'From MiTabla';
MiTabla.Filter:=CadSql;
MiTabla.Filtered:=True;
end;
Bueno, esto es la idea básica creo que te cueste poco desarrollarla.
Un Saludo.