Se vuoi avere a designtime (quando progetti) dei campi su cui poter lavorare che saranno però disponibili solo a runtime (in esecuzione, tramite codice), puoi inserire in fase di progettazione una query nella proprietà SQL che restituisca campi identici a quelli che si vogliono ottenere durante la fase di esecuzione...in questo modo, puoi lavorare sui campi anche se la query vera e propria, parametrica, costruita tramite codice, verrà definita durante l'esecuzione del programma.

Se definisci la query a runtime, durante l'esecuzione del programma, da qualche parte dovrai impostare lo statement SQL, in un modo simile a questo:
codice:
Query1.SQL.Text := 'SELECT * FROM...';
Query1.Open;
La nuova stringa SQL sostituirà quella usata in fase di progettazione per associare controlli visuali alla query.

E' più chiaro?