Puedes usarlos para darle al usuario la oportunidad de editar un campo que contiene llaves foraneas. En ellos se enlistan todas las claves foraneas que estan registradas y disponibles en la BD. El usuario simplemente elige una de ellas.
Las propiedades que debes manejar son:
DataSource = TDataSource q' apunta a la tabla a editar.
DataField = nombre del campo foraneo a editar.Después estableces la relacion con la tabla que tiene la referencia de esas claves:
ListSource = TDataSource de la "Tabla de Referencia"
KeyField = campo llaveAhora bien, si quieres que no se vean numeritos (por lo general las claves son digitos) y que mejor se vean nombres como Juan, Pedro, producto X, etc. entonces cambia el valor de la propiedad ListField por el campo que te interesa mostrar. Automaticamente la tabla sigue obteniendo el valor del campo llave, pero el usuario puede comprender mejor qué es lo que esta capturando.
Espero haberme explicado bien. Saludos.