Página 1 de 1
Navegar
Enviado: 26 Mai 2008 10:52
por Vlademir
Tem como navegar entre os GETs e os botões BUTTON ou OWNERBUTTON utilizando a tecla TAB?
Nos exemplos que tenho e nos meus programas, navega somente entre os GETs.
Re: Navegar
Enviado: 26 Mai 2008 11:25
por sygecom
Você esta utilizando a ultima versão da CVS ? foi feita uma correção que dah focu direto em button no final dos GET, sendo assim a tecla TAB passa por ele tmb. E pode tentar usando tmb. nas Dialog "CLIPPER NOEXIT"
Re: Navegar
Enviado: 26 Mai 2008 11:48
por Luciano Bonfim
usa STYLE TABSTOP
Re: Navegar
Enviado: 26 Mai 2008 12:33
por Vlademir
Como consigo a última versão e atualização do xHarbour e HwGui.
Utilizo hoje: xHarbour 0.99.70
hwgui: 2.16
Re: Navegar
Enviado: 26 Mai 2008 13:08
por sygecom
Vlademir escreveu:Como consigo a última versão e atualização do xHarbour e HwGui.
Utilizo hoje: xHarbour 0.99.70
hwgui: 2.16
Você pode baixar no link abaixo:
xHarbour + Contrib + Hwgui 2.16(CVS) + Bcc 5.5.1
Depois para atualizar basta instalar o Tortoise, e ir atualizando a pasta HWGUI.
Re: Navegar
Enviado: 26 Mai 2008 14:31
por Vlademir
Baixei a ultima versão conforme indicado acima, porém não pula dos GETs para os BUTTONS.
Como funciona "STYLE TABSTOP", pois dá TABSTOP, como inexistente.
Tem como mandar um exemplo.
Re: Navegar
Enviado: 26 Mai 2008 14:57
por sygecom
Código: Selecionar todos
@ 400,130 GET oLITROS VAR wLITROS PICTURE "@E 999,999.9" SIZE 100,22;
STYLE WS_TABSTOP;
TOOLTIP "Informe a Quantidade de Litros"
Re: Navegar
Enviado: 26 Mai 2008 16:21
por Vlademir
Este é o meu código, o qual não funciona a navegação com o TAB entre os GETs e os botões.
Agradeço a ajuda...
Código: Selecionar todos
function duplicaRecebimentoItemComprado()
Local oDuplicaItemComprado, oFont:= HFont():Add( "Courier",0,-13 )
Local oFont2 := HFont():Add( "MS Sans Serif",0,-13 )
local nQuantidade, oQuantidade,;
oGrava, oSai, cUsuario, cMatricula
nQuantidade:=0
INIT DIALOG oDuplicaItemComprado TITLE "Compra - duplicar lançamento" ;
CLIPPER NOEXIT ;
AT 0,0 SIZE 400,200 ;
STYLE DS_CENTER + WS_VISIBLE + WS_POPUP + WS_VISIBLE + WS_CAPTION + WS_SYSMENU ;
FONT oFont
@ 10,40 SAY "Quantidade que ficará neste lançamento:" ;
SIZE 350, 22
@ 10,65 GET oQuantidade VAR nQuantidade SIZE 120,25 ;
PICTURE "@e 9,999,999.999" ;
STYLE WS_TABSTOP+WS_DLGFRAME
@ 140,65 SAY Compras->unidade ;
SIZE 50, 22 ;
STYLE WS_DLGFRAME
@ 10,150 OWNERBUTTON oGrava SIZE 75,25 ;
TEXT "Grava" ;
ON CLICK {|| gravaDuplicaItem( cUsuario, cMatricula,nQuantidade), oDuplicaItemComprado:close() }
@ 90,150 OWNERBUTTON oSai SIZE 75,25 ;
TEXT "Sair" ;
ON CLICK {|| oDuplicaItemComprado:close() }
ACTIVATE DIALOG oDuplicaItemComprado
oFont:Release()
return nil
Re: Navegar
Enviado: 26 Mai 2008 16:38
por sygecom
Tente assim:
Código: Selecionar todos
function duplicaRecebimentoItemComprado()
Local oDuplicaItemComprado, oFont:= HFont():Add( "Courier",0,-13 )
Local oFont2 := HFont():Add( "MS Sans Serif",0,-13 )
local nQuantidade, oQuantidade,;
oGrava, oSai, cUsuario, cMatricula
nQuantidade:=0
INIT DIALOG oDuplicaItemComprado TITLE "Compra - duplicar lançamento" ;
CLIPPER NOEXIT ;
AT 0,0 SIZE 400,200 ;
STYLE DS_CENTER + WS_VISIBLE + WS_POPUP + WS_VISIBLE + WS_CAPTION + WS_SYSMENU ;
FONT oFont
@ 10,40 SAY "Quantidade que ficará neste lançamento:" ;
SIZE 350, 22
@ 10,65 GET oQuantidade VAR nQuantidade SIZE 120,25 ;
PICTURE "@e 9,999,999.999" ;
STYLE WS_TABSTOP+WS_DLGFRAME
@ 140,65 SAY Compras->unidade ;
SIZE 50, 22 ;
STYLE WS_DLGFRAME
@ 10,150 OWNERBUTTON oGrava SIZE 75,25 ;
TEXT "Grava" ;
ON CLICK {|| gravaDuplicaItem( cUsuario, cMatricula,nQuantidade), oDuplicaItemComprado:close() };
STYLE WS_TABSTOP
@ 90,150 OWNERBUTTON oSai SIZE 75,25 ;
TEXT "Sair" ;
ON CLICK {|| oDuplicaItemComprado:close() };
STYLE WS_TABSTOP
ACTIVATE DIALOG oDuplicaItemComprado
oFont:Release()
return nil
Re: Navegar
Enviado: 26 Mai 2008 17:20
por Vlademir
Funcionou legal ............
Agora outro problema de navegação:
Quando tem um BROWSE e os botões, tem como com o TAB passar do browse para os botões.
Este é o meu código:
Código: Selecionar todos
INIT DIALOG oForm CLIPPER NOEXIT ;
TITLE "Comprados" ;
FONT oFont ;
AT 0, 0 SIZE 850, 400
@ 5, 5 BROWSE oBrowse DATABASE OF oForm SIZE 845,340 ;
STYLE WS_VSCROLL + WS_HSCROLL+WS_TABSTOP ;
ON SIZE {|o,x,y|MoveWindow(o:handle,5,5,x-5,(y-60))} ;
ON CLICK {|| detalheOrdemItemComprado(), oBrowse:refresh() } ;
MULTISELECT
ADD COLUMN {|| ordemCpra } TO oBrowse HEADER 'Ord/Compra'
ADD COLUMN {|| alltrim(id) } TO oBrowse HEADER 'Requisição' PICTURE "@!"
@ 120, 360 BUTTON oDetalhe ;
CAPTION "Detalhe/Compra" ;
SIZE 90,25 ;
STYLE WS_TABSTOP ;
TOOLTIP "Detalhes da ordem de compra" ;
ON SIZE {|o,x,y|MoveWindow(o:handle,120,(y-40))} ;
ON CLICK {|| detalheOrdemItemComprado(), oBrowse:refresh() }
@ 215, 360 BUTTON oImprimeOrdem ;
CAPTION "Imprime/Ordem" ;
SIZE 80,25 ;
STYLE WS_TABSTOP ;
TOOLTIP "Imprimir a ordem de compra" ;
ON SIZE {|o,x,y|MoveWindow(o:handle,215,(y-40))} ;
ON CLICK {|| imprimeOrdemCompra( oBrowse,.f. ) }
ACTIVATE DIALOG oForm
Re: Navegar
Enviado: 26 Mai 2008 22:18
por sygecom
Nunca usei TAB em Browse, mas acredito que se vc iniciar o focu no Browse, depois pode ir para o Browse o focu, porem sair do Browse com TAB já não sei.
Quem sabe aparece alguem para dar alguma dica !!!
Abraços
Leoanrdo Machado
Re: Navegar
Enviado: 28 Mai 2008 13:02
por esbasso
Sugeri adicionar o CTRL+TAB E CTL+SHIFT+TAB para sair do BROWSE. Taçvez seja implementado.
mas QUEM quiser implementar desde ja
LOGO APOS ESTE
ELSEIF wParam == 33 // PageUp
...
--> ADCIONE ESTE CODIGO
--> ELSEIF wParam == VK_TAB .AND. ::lCtrlPress = .T.
nPos := AScan( ::oparent:acontrols, { | o | o:handle == ::HANDLE } )
IF GetKeyState(VK_SHIFT) < 0
nPos := IIF(nPos <= 1 ,len(::oparent:acontrols),nPos-1)
ELSE
nPos := IIF(nPos = 0 .OR. nPos=len(::oparent:acontrols),1,nPos+1)
ENDIF
::oparent:acontrols[nPos]:SETFOCUS()
///
--> FINAL
ELSEIF wParam == 13 // Enter
::Edit()