Puedes hacer algo por el estilo
Código:
query1.close;
Query1.Sql.Clear;
Query1.Sql.Add('select Nombre, apellidos, dni from clientes
order by ');
if nombre=true then
Query1.Sql.Add('nombre')
else
Query1.Sql.Add('apellidos');
Query1.Open;
Y ya ta.
Un saludo.