Encontrei onde esta dando problema, criei uma procedure chamada FOCO para mudar o Foco no item que estiver no foco
Se eu removo do ONCREATE ele funciona normal o exit do componente, mas como faço para continuar usando esse metodo de foco? Codigo: procedure TFPADRAO020.Foco(Sender: TObject); var I: integer; Ed: TEdit; dbEd: TDBEdit; dbMm: TDBMemo; dbLkp: TDBLookupComboBox; begin for I := 0 to ComponentCount - 1 do begin if Components[I] is TEdit then begin Ed := Components[I] as TEdit; if Ed.Focused then Ed.Color := clBtnFace else Ed.Color := clWhite; end; if Components[I] is TDBEdit then begin dbEd := Components[I] as TDBEdit; if dbEd.Focused then dbEd.Color := clBtnFace else dbEd.Color := clWhite; end; if Components[I] is TDBMemo then begin dbMm := Components[I] as TDBMemo; if dbMm.Focused then dbMm.Color := clBtnFace else dbMm.Color := clWhite; end; if Components[I] is TDBLookupComboBox then begin dbLkp := Components[I] as TDBLookupComboBox; if dbLkp.Focused then dbLkp.Color := clBtnFace else dbLkp.Color := clWhite; end; end; end; e no ONCREATE do Formulario esta assim: procedure TFPADRAO020.FormCreate(Sender: TObject); var I:integer; begin for I := 0 to ComponentCount - 1 do begin if Components[I] is TEdit then (Components[I] as TEdit).OnExit := Foco; if Components[I] is TDBEdit then (Components[I] as TDBEdit).OnExit := Foco; if Components[I] is TDBMemo then (Components[I] as TDBMemo).OnExit := Foco; if Components[I] is TDBLookupComboBox then (Components[I] as TDBLookupComboBox).OnExit := Foco; end; end; Ats Eduardo Estou com o seguinte problema, Tenho um Form principal onde faco o padrao para todos os cadastros, porem quando eu crio outro form baseado nele, o Exit do campo TEDIT colocando no form herdado nao funciona, alguem tem alguma ideia do que pode ser? Ats Eduardo [As partes desta mensagem que não continham texto foram removidas]