Es decir, con un TDBGrid normal no conozco la forma de hacerlo, puedes buscar por los foros hilos en los que se habla de componentes avanzados que hagan eso que tu quieres...si no tambien los tienes por internet.
En cualquier caso, donde está tu espíritu aventurero... hazlo tú. No quedará muy profesional, es decir, va a quedar una chapuza pero mira el lado positivo, vas a aprender un monton.
Una posible idea:
- No muestres los datos directamente de la tabla pásalos a una tabla intermedia donde puedas jugar con ellos sin miedos...
Así cuando te pares en el registro que tu quieras, mediante los eventos vas a saberlo, podrás lanzar un evento que te modifique la tabla intermedia, colocando como nuevos registros entre el que tu quieres modificar y el siguiente, tantas filas como valores posibles... y cuando hagas clic sobre una de esas filas te quedas con el nombre asociado, se lo metes al campo que te interesa, eliminas las filas esas y refrescas el grid. Antes dije chapuza o fricada???
Ejemplo:
Código SQL
[-]
Codigo Nombre Tipo
------ ------ ----
1 Luis Cliente
2 Pepe Proveedor
3 Julio
4 Carlos Proveedor
y asi cuando hagas click sobre el "Tipo" de (3, Julio), la tabla te quedará:
Código SQL
[-]
Codigo Nombre Tipo
------ ------ ----
1 Luis Cliente
2 Pepe Proveedor
3 Julio
Cliente
Proveedor
Empleado
Otros
4 Carlos Proveedor
y al hacer click sobre una linea que no tiene un codigo asociado recoges el valor lo cargas en tu tabla
REAL y vueves a crear la tabla intermedia.
Venga a programar... y a pasarlo bien.
PD: Cuando no duermo me vuelvo algo friki