Ir para conteúdo
  • Cadastre-se

dev botao

Retorno do foco para o formulário errado


Solivan
  • Este tópico foi criado há 2380 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Boa noite, tenho um PDV que está ganhando uma implementação com ACBrTEFD, estou quase concluindo, porém me deparei com um comportamento inesperado no procedimento procedure TACBrTEFD.RestaurarFocoAplicacao ;

Vou detalhar o caso;

1. Executo o TEFD ele autoriza

2. Quando retorna com o foco me joga para o formulário principal da minha aplicação e não para o segundo formulário que é o do PDV.

Fica um pouco estranho ao voltar para o segundo form, então observando a função notei que é isso mesmo que acontece e fiz um pequeno hotfix, testei e funcionou muito bem.

Alterei as linhas 1957 e 1958, ao invés de passar o handle da Janela principal estou passando o Handle do form que está ativo no momento da transação TEFD

Antes estava assim

          if Assigned(Application.MainForm) then
            SetForegroundWindow(FormToHWND(Application.MainForm));

Mudei o código para:

          if Assigned(Application.ActiveFormHandle) then
            SetForegroundWindow(Application.ActiveFormHandle);

Segue o arquivo para analise!

Obrigado!

ACBrTEFD.pas

Sistema de Automação Comercial para diversos segmentos
NF-e, NFC-e, SPED Fiscal - www.arenasoft.com.br

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Você não precisa modificar ou usar o código do ACBrTEFD para restaurar o foco na aplicação... basta programar o evento OnRestauraFocoAplicacao e atribuir "Tratado := True"... Com isso o código do ACBrTEFD.pas será ignorado

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

10 horas atrás, Daniel Simoes disse:

Você não precisa modificar ou usar o código do ACBrTEFD para restaurar o foco na aplicação... basta programar o evento OnRestauraFocoAplicacao e atribuir "Tratado := True"... Com isso o código do ACBrTEFD.pas será ignorado

Ok, Obrigado Daniel

Sistema de Automação Comercial para diversos segmentos
NF-e, NFC-e, SPED Fiscal - www.arenasoft.com.br

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2380 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.