Ok... un gran maestro me ayudo y me ha resuelto el problema de una manera muy elegante... aqui les pongo lo que he hecho para que vean y juzguen:
Lo que yo queria inicialmente es que no se vea el contenido de unos campos en los controles ok?? ocultarselo solo a ciertos usuarios... ok, estaba el caso que me comentaron aqui de que tambien podian haber muchos controles asociados al campo y desaparecerlos uno a uno era un problema pues habia que recorrer todos los controles de la forma solo para hacer eso... entonces mi amigo me dijo: "ok, tu focalizate en el campo, no en los controles; al final de cuentas eso es lo que tu quieres que no se vea: el contenido del campo"
Asi que me dijo que hiciera este método en mi forma:
Código Delphi
[-]
procedure T_Prototipo.GetTextVacio (Sender: TField; var Text: string;
DisplayText: boolean);
begin
Text := '';
Sender.ReadOnly := True;
end;
Y para cada campo que deseas esconder del usuario hazle esto:
Código Delphi
[-]
DataSet.FieldByName ('tu_campo').OnGetText :=
GetTextVacio;
Funciona de las mil maravillas, todos los controles que se asocien no importa de que tipo sean, su contenido siempre va a estar oculto, pero la información original no se pierde...
No cabe duda, el que sabe, sabe!!!