Página 1 de 1
Browse nao funciona no retorto de Dialog
Enviado: 19 Nov 2021 14:48
por nasouza
Numa Dialog tenho um browse com uma base de dados, atraves das setas do teclado consigo fazer a movimentacao de registro a registro, quando preciso chamar uma dialog atraves de botao buttonex para realizar uma inclusao,alteracao ou seja abro uma nova dialog, no momento que termino esta rotina e retorno para o browse , as setas do teclado nao funciona, e necessario que eu click com o mouse em qualquer registro, para que volte a funcionar as setas do teclado, existe uma forma de resolver esta anomalia. utilizo o xHarbour 1.2.3 simplex (build 20140807) com hwgui 2.17.
Browse nao funciona no retorto de Dialog
Enviado: 19 Nov 2021 15:14
por gilbertosilverio
Ola,
A grosso modo, basta você direcionar o foco para o browse, após o termino da função, creio que e isso...
Código: Selecionar todos
@ 860,460 BUTTONEX oButtonex20 CAPTION "Pes&quisar" SIZE 100,32 STYLE WS_TABSTOP ;
ON CLICK {|| Monta_NFe(), oBROWSE2:SETFOCUS() }
Browse nao funciona no retorto de Dialog
Enviado: 19 Nov 2021 16:18
por nasouza
Gilberto, incrível, mas dando um setfocus na saída da dialog que foi chamada não funcionou e desta maneira me parece que sim, vou colocar as rotinas.
Browse nao funciona no retorto de Dialog
Enviado: 20 Nov 2021 08:23
por gilbertosilverio
Ola,
Não sou nenhum expert na HWGUI, mais tudo que preciso fazer coloco dentro desse CodeBlock, se e assim que se chama esses colchetes, geralmente mando o foco para onde quero e muito mais...
Coloca também um oBrowse:Refresh(), para reorganizar o browse...
Código: Selecionar todos
@ 860,460 BUTTONEX oButtonex20 CAPTION "Pes&quisar" SIZE 100,32 STYLE WS_TABSTOP ;
ON CLICK {|| Monta_NFe(), oBROWSE2:REFRESH(), oBROWSE2:SETFOCUS() }
Browse nao funciona no retorto de Dialog
Enviado: 20 Nov 2021 09:47
por JoséQuintas
Talvez oBrowse2 não esteja visível, talvez tenha que ser no browse.
Uma opção, talvez, passar oBrowse2 por parâmetro.
E talvez pra não ficar um codeblock muito grande, fazer igual Visual Basic, mas precisa testar.
Ao invés de:
Código: Selecionar todos
@ 860,460 BUTTONEX oButtonex20 CAPTION "Pes&quisar" SIZE 100,32 STYLE WS_TABSTOP ;
ON CLICK {|| Monta_NFe(), oBROWSE2:REFRESH(), oBROWSE2:SETFOCUS() }
Testar se isto funciona:
Código: Selecionar todos
@ 860,460 BUTTONEX oButtonex20 CAPTION "Pes&quisar" SIZE 100,32 STYLE WS_TABSTOP ;
ON CLICK {|| oButtonex20_OnClick( oBrowse2 ) }
...
FUNCTION oButtonex20_OnClick( oBrowse2 )
Monta_NFe()
oBrowse2:Refresh()
oBrowse2:SetFocus()
RETURN Nil
Quando tem muita coisa, isso deixa o fonte mais limpo.
Mas falta o teste prático.