Obrigado pela atenção
Realmente ele está num pagecontrol.
Já coloquei Pagecontrol.enabled, PageControl.visible
PageControl.ActivePage e nada.
Como eu verifico esta questão de 'parent' do dbedit?
Marcio


  ----- Original Message ----- 
  From: Marcos Douglas 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Wednesday, July 15, 2009 10:40 AM
  Subject: Re: [delphi-br] Dúvidas no arquivo





  Se o campo (DBEdit por ex) estiver num PageControl, numa aba que não está
  selecionada, ocorrerá este erro...
  Vc tem que verificar se o "Parent" do DBEdit está visível.

  -- Marcos Douglas

  2009/7/15 Marcio Carneiro <marcio-carne...@ig.com.br>

  > Olá, amigos
  > Estou desenvolvendo o meu primeiro sistema do Delphi.
  > Estou fazendo com base num vídeo aulda da Devmedia.
  > Agora surgiu uma dúvida:
  > Tenho uma rotina que antes do post, verifica se os campos marcados como não
  > nulos estão preenchidos, se não estiver:
  > ele dá um setfocus no campo e aí aparece o erro: CANNOT FOCUS A DISABLED OR
  > INVISIBLE WINDOW"
  > Só que o campo está visible e true, o pagecontrol também.
  > Meu código:
  > var
  > i : integer;
  > {: verifica quais os campos que estão em branco no cadastro}
  > begin
  > inherited;
  > Result := True; {: assume que estão todos preenchidos}
  > for i := 0 to DtSrc.DataSet.FieldCount - 1 do
  > if DtSrc.DataSet.Fields[i].Required then
  > if (DtSrc.DataSet.Fields[i].IsNull) Or
  > (DtSrc.DataSet.Fields[i].AsString = '') then
  > begin
  > MessageDlg('Preencha o campo " '+
  > DtSrc.DataSet.Fields[i].DisplayLabel + '"', mtWarning,[mbOk], 0);
  > Result := False;
  > DtSrc.DataSet.Fields[i].FocusControl; {: coloca o foco no controle}
  > (O ERRO APARECE AQUI)
  > Break;
  > end;
  >
  > Já tentei no Google e nada
  > Um abraço
  > Marcio
  >
  > [As partes desta mensagem que não continham texto foram removidas]
  >
  >
  >
  > ------------------------------------
  >
  > --
  > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
  >
  >
  >
  >

  [As partes desta mensagem que não continham texto foram removidas]



  

[As partes desta mensagem que não continham texto foram removidas]

Responder a