Página 1 de 4

Browse da Hwgui que acho simples de fazer.

Enviado: 05 Nov 2021 21:25
por Itamar M. Lins Jr.
Olá !
Browse legal com zebra, marcador, cores diferentes. Fácil de identificar o que é cada coisa.
Captura de tela 2021-11-05 212312.png
Saudações,
Itamar M. Lins Jr.

Browse da Hwgui que acho simples de fazer.

Enviado: 07 Nov 2021 09:30
por Fernando queiroz
se você colocar esse browse dentro de uma PAGE usando

Código: Selecionar todos

@ 1,113 TAB oPage1 ITEMS {} SIZE 1024,456

BEGIN PAGE 'PRODUTOS' OF oPage1
     @ 2,30 BROWSE oBrowse1 ARRAY  OF oPage1 SIZE 1018,420
END PAGE OF oPage1
BEGIN PAGE 'CONSULTA 1' OF oPage1 
     @ 6,30 BROWSE oBrowse2 ARRAY OF oPage1 SIZE 500,216
END PAGE OF oPage1
como faz para setar o foco para o browse dentro da pagina????

ja usei

Código: Selecionar todos

oPage1:SetTab( 1 ), 
oPage1:oBrowse1:SetFocus()
mas nao funciona

Browse da Hwgui que acho simples de fazer.

Enviado: 07 Nov 2021 14:21
por Itamar M. Lins Jr.
Olá!
Eu uso assim:

Código: Selecionar todos

If oDlg:oTab:GetActivePage() = 4 //Nota Fiscal
Assim:

Código: Selecionar todos

   oDlg:oTab:SetTab(1)
   oDlg:oTab:ChangePage(1)
Assim:

Código: Selecionar todos

   oDlg:oTab:oBrwGrade:Enable()
Assim:

Código: Selecionar todos

      oTab:oBrwEnt:Refresh()
Pq o browse está dentr da tab, que está em uma DIALOG, então eu passo o parâmetro.

Código: Selecionar todos

      @ 005,80 BrowseEx oBrwNF DataBase of oTab Size 550,430  Font oBrwFont
Assim na função para manipular os objetos dentro da TAB.

Código: Selecionar todos

Function SaidasMercadoriasNF(oTab, lShow)
Saudações,
Itamar M. Lins Jr.

Browse da Hwgui que acho simples de fazer.

Enviado: 07 Nov 2021 14:50
por JoséQuintas
Olhando o fonte do tab, tem este método ShowPage( nPage )
Faça um teste com ele.
Primeiro showpage( nPage ) depois o foco no browse()

Browse da Hwgui que acho simples de fazer.

Enviado: 08 Nov 2021 10:23
por Fernando queiroz
ate consigo ir para a pagina que eu quero mas o foco nao fica no browse automaticamente, tenho de clicar nele para obter o foco,
ja quando nao tem TAB o foco fica no browse certinho.

o porque disso:
quando entro nos browse para pesquisa eu quero digitar direto para pesquisar sem ter de clicar dentro do browse para isso.
nas telas de pesquisas para rotinas normais a coisa funciona pois nao tem TAB , mas na tela de cadastro eu tenho 5 paginas com um browse na primeira , so que o foco nao vai para esse browse , tentei de varias formas e nada.

Browse da Hwgui que acho simples de fazer.

Enviado: 08 Nov 2021 11:09
por JoséQuintas
Como chega ao tab?
é essa rotina que deve alterar.

Browse da Hwgui que acho simples de fazer.

Enviado: 08 Nov 2021 11:31
por Fernando queiroz
JoséQuintas escreveu:Como chega ao tab?
é essa rotina que deve alterar.
chego no tab usando oDlg:oPage1:SetTab(1), oDlg:oPage1:ChangePage(1)

mas quando uso o oBrowse1:SetFocus(), simplesmente o foco nao vai para o browse
ja tentei assim:

oBrowse1:SetFocus()
oDlg:oPage1:oBrowse1:SetFocus()

dentro do metodo que trata a TAB
do case
case This:GetActivePage() = 1
oDlg:oLabel1:SETTEXT( cProgressKey )
::CADASTRO_PRODUTOS_MANUTENCAO_onDlgInit( oDlg )
This:oBrowse1:SetFocus()
case This:GetActivePage() = 2

Browse da Hwgui que acho simples de fazer.

Enviado: 08 Nov 2021 11:51
por Fernando queiroz
tentei assim também

oDlg:oPage1:SetTab(1), oDlg:oPage1:ChangePage(1), oDlg:oPage1:ShowPage(1), oDlg:oPage1:oBrowse1:SetFocus()

mas não funciona

ate vai para a pagina correta pois testei com a pagina 2 e funciona , somente não coloca o foco do browse das paginas
o mais interessante é que se eu colocar um outro componente tipo um GET , DATEPICKER, COMBOBOX o foco vai certinho so o BROWSE que nao funciona

Browse da Hwgui que acho simples de fazer.

Enviado: 08 Nov 2021 14:05
por alxsts
Olá!

Experimente colocar no evento Activate do form que contém o Tab e o Browse:

Código: Selecionar todos

oDlg:Activate( ,,, .T., { |o| o:oPage1:ShowPage(1), hwg_SetFocus( o:oPage1:oBrowse1:handle ) } )
(não testei)

Browse da Hwgui que acho simples de fazer.

Enviado: 08 Nov 2021 14:07
por JoséQuintas
Chega a ser engraçado.... eu não usar GUI da gtwvg por causa do foco, e agora ver que isso é comum em GUI kkkkk
hwgui.png
Nem sei porque, mas estava olhando os fontes da hwgui 2.17, e encontrei essa anotação, não sei se ajuda.

Browse da Hwgui que acho simples de fazer.

Enviado: 08 Nov 2021 18:18
por Fernando queiroz
alxsts escreveu:Olá!

Experimente colocar no evento Activate do form que contém o Tab e o Browse:

Código: Selecionar todos

oDlg:Activate( ,,, .T., { |o| o:oPage1:ShowPage(1), hwg_SetFocus( o:oPage1:oBrowse1:handle ) } )
(não testei)
testei e não funciona

Browse da Hwgui que acho simples de fazer.

Enviado: 08 Nov 2021 18:26
por Fernando queiroz
tela.jpg
usei:
INIT DIALOG oDlg TITLE "PRODUTOS" ;
ICON HIcon():Addresource('SGC_ICON') ;
AT 0, 0 SIZE 1024,600 CLIPPER NOEXIT ;
ON INIT {|| oBrowse1:aArray := ::CADASTRO_PRODUTOS_MANUTENCAO_CARREGA( "ORDER BY produtos.DESPRO LIMIT 50" ) , ;
oBrowse1:REFRESH(), ;
::CADASTRO_PRODUTOS_MANUTENCAO_onDlgInit( oDlg ), oDlg:oPage1:SetTab(2), oDlg:oPage1:ChangePage(2), hwg_SetFocus(oDlg:oPage1:oBrowse2) } ;
BACKCOLOR 16777215

posiciona na pagina certinho mas não da o foco no browse

Browse da Hwgui que acho simples de fazer.

Enviado: 08 Nov 2021 18:32
por Fernando queiroz
tela.jpg
com outro componente a coisa é automática nem precisa setar o foco

Browse da Hwgui que acho simples de fazer.

Enviado: 08 Nov 2021 18:58
por alxsts
Olá!

Faça mais est teste, colocando oDlg:oPage1:oBrowse2:enable() como abaixo:

Código: Selecionar todos

::CADASTRO_PRODUTOS_MANUTENCAO_onDlgInit( oDlg ), oDlg:oPage1:SetTab(2), oDlg:oPage1:ChangePage(2), oDlg:oPage1:oBrowse2:enable(), hwg_SetFocus(oDlg:oPage1:oBrowse2) } ;

Browse da Hwgui que acho simples de fazer.

Enviado: 08 Nov 2021 19:12
por Fernando queiroz
alxsts escreveu:Olá!

Faça mais est teste, colocando oDlg:oPage1:oBrowse2:enable() como abaixo:

Código: Selecionar todos

::CADASTRO_PRODUTOS_MANUTENCAO_onDlgInit( oDlg ), oDlg:oPage1:SetTab(2), oDlg:oPage1:ChangePage(2), oDlg:oPage1:oBrowse2:enable(), hwg_SetFocus(oDlg:oPage1:oBrowse2) } ;
testado e não funciona !!!