Array
(
)

SetFocus Delphi 2009.

John Oliveira
   - 04 nov 2009

Pessoal,

   Sempre utilizei o Delphi 6 e 7.

Estou migrando para versão do Delphi 2009.
Estou com seguinte problema que antes nao ocorria.

Quando clico num botão Salvar por exemplo:

E verifico se todas informações necessarias esta preenchidas.

  if Trim(DM_DADOS.CT_DUPLID_FORCLI.AsString)='' then
  Begin
    MessageBox(0,'Informe o Aluno.','Aviso',0+MB_ICONWARNING+8192);
    Edt_CodAluno.SetFocus;
    Exit;
  End;

Não porque mas o sistema não envia o Focu para o Edt_CodAluno, faço menor ideia porque sempre funcionou.
Edt_CodAluno e um TDBEDIT, com TRxDBLookupCombo também acontece a mesma coisa.

Ai fiz um teste bobo, com dois TEdit.

  if Edit1.Text='' then
  Begin
    MessageBox(0,'Informe o Aluno.','Aviso',0+MB_ICONWARNING+8192);
    Edit1.SetFocus;
    Exit;
  End;

Funcionou normalmenten neste caso.


Existe algum problema com relação aos componentes de acesso a dados?
ou estou errando em alguma coisa que confesso não saber, porque sempre deu certo em versões anteriores.

Abraços...


Pjrm1470
   - 04 nov 2009

TEdit e TDBEdit dão na mesma usando SetFocus.
No evento OnEnter do Edt_CodAluno tem algo definido?

John Oliveira
   - 04 nov 2009

Beleza grande,

    Eu sei disso também...
Valeu pela força...

Este código esta em TBitBtn.
Fazendo teste aqui...Olha que estranho.
Retirei a MessageBox

  if Trim(DM_DADOS.CT_DUPLID_FORCLI.AsString)='' then
  Begin
    Edt_CodAluno.SetFocus;
    Exit;
  End;


Resultado: O Focu foi corretamente para Edt_CodAluno.


Valeu grande...