Prueba a ver si te vale lo que pongo a continuacion:
Código Delphi
[-]
filtro:= 'SELECT ';
if CheckBox1.Checked then
filtro:= filtro + 'campo1,';
if CheckBox2.Checked then
filtro:= filtro + 'campo2,';
if CheckBox3.Checked then
filtro:= filtro + 'campo3,';
......
filtro := Copy(filtro, 1, (length(filtro) - 1));
siendo filtro una variable de tipo string.
A lo mejor hay alguna manera de hacerlo mejor.
Espero que te sirva.