No tengo mi entorno de desarrollo a la mano pero quizás sirva lo siguiente :
1. Escribir la sentencia select con valores permitidos por el motor específico de bases de datos : 'SELECT Cast(1 as integer) as Seleccionado, Id, Nombre FROM Clientes';
2. Crear campos persistentes en el adoquery y forzar el campo "Seleccionado" como un TBooleanField. La secuencia de pasos más o menos sería Click derecho sobre el AdoQuery -> Adicionar todos los campos -> de la lista borrar el campo "Seleccionado" -> Adicionar campo para adicionar un nuevo campo con nombre "Seleccionado" de tipo boolean.
Insisto, es solo una idea, pero podría funcionar.
Nota 1: Los pasos en el punto 2 suponen que el AdoQuery existe en tiempo de diseño.
Nota 2: El codigo del #1 :
Código Delphi
[-]DM.Consulta.fielddefs.Items[1].DataType := ftBoolean;
debería ser
Código Delphi
[-]DM.Consulta.fielddefs.Items[0].DataType := ftBoolean;
La colección de Items empieza en cero y no en uno.