Caros amigos, tenho um formulário contínuo "FormulárioB", que lista alguns arquivos de determinada pasta
Ele está dentro de um "Formulário A", que possui uma Active-X AcroPDF denominada AcroPDF8
Todos os campos deste formulário possuem uma função que, quando clicados em qualquer registro, ele abre a Forms![FormulárioA].AcroPDF8 e mostra o arquivo relativo àquele registro
Ótimo, porém, ele perde o foco do registro que eu havia clicado... E faz perder a produtividade, pois a idéia é clicar no campo, visualizar o arquivo e preencher o campo com dados provenientes do que visualizamos. Ao invés disto, temos que clicar no campo, visualizar o arquivo, CLICAR NOVAMENTE NO CAMPO e preencher os dados... Imagine isto para 1.000 registros!!!
O código, simples, é o seguinte:
Na verdade, a linha Me.txt_Arquivo.SetFocus até funciona, porém, após o tempo de carregamento do PDF na AcroPDF, esta ActiveX acaba retornando para si o foco imediatamente.
Já tentei fazer uma função para o Access pausar por 2 segundos antes do SetFocus, porém, a pausa acaba segurando o carregamento da ActiveX, ou seja, não funciona, só retarda o carregamento do PDF e o foco ainda é capturado por ela...
A única coisa que consegui é inserir uma MsgBox antes do SetFocus. Funciona, porém, não é legal... A idéia é não clicar em nada para que o foco retorne ao meu campo clicado inicialmente.
Alguém teria uma sugestão??
Obrigado!!
Miguel Serra
Ele está dentro de um "Formulário A", que possui uma Active-X AcroPDF denominada AcroPDF8
Todos os campos deste formulário possuem uma função que, quando clicados em qualquer registro, ele abre a Forms![FormulárioA].AcroPDF8 e mostra o arquivo relativo àquele registro
Ótimo, porém, ele perde o foco do registro que eu havia clicado... E faz perder a produtividade, pois a idéia é clicar no campo, visualizar o arquivo e preencher o campo com dados provenientes do que visualizamos. Ao invés disto, temos que clicar no campo, visualizar o arquivo, CLICAR NOVAMENTE NO CAMPO e preencher os dados... Imagine isto para 1.000 registros!!!
O código, simples, é o seguinte:
- Código:
Private Sub txt_Arquivo_Click()
Forms![FormulárioA].AcroPDF8.src = Me.Caminho
Me.txt_Arquivo.SetFocus ' Esta linha não está funcionando!!!
End Sub
Na verdade, a linha Me.txt_Arquivo.SetFocus até funciona, porém, após o tempo de carregamento do PDF na AcroPDF, esta ActiveX acaba retornando para si o foco imediatamente.
Já tentei fazer uma função para o Access pausar por 2 segundos antes do SetFocus, porém, a pausa acaba segurando o carregamento da ActiveX, ou seja, não funciona, só retarda o carregamento do PDF e o foco ainda é capturado por ela...
A única coisa que consegui é inserir uma MsgBox antes do SetFocus. Funciona, porém, não é legal... A idéia é não clicar em nada para que o foco retorne ao meu campo clicado inicialmente.
Alguém teria uma sugestão??
Obrigado!!
Miguel Serra