PAGE DOWN, no funciona?

PAGE DOWN, no funciona?

Postby karinha » Fri Sep 17, 2021 1:23 pm

PAGE DOWN, no funciona, que hago mal?

Code: Select all  Expand view  RUN

   // VK_NEXT PAGE DOWN key
   IF GETASYNCKEY( VK_NEXT )

      QUIT

   ENDIF
 


Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7872
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: PAGE DOWN, no funciona?

Postby Antonio Linares » Fri Sep 17, 2021 3:33 pm

João,

Please provide a small and complete example :-)

or explain what you are trying to do from where
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42203
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: PAGE DOWN, no funciona?

Postby karinha » Fri Sep 17, 2021 3:50 pm

Maestro:

Cambié de opinión y domino la lógica. Voy a usar PAGE UP y PAGE DOWN para otro propósito, navegar entre FOLDEREXs.

Luego haré un ejemplo simple de lo que quería hacer y PAGE DOWN no tuvo ningún efecto en el GET's VALID.

Code: Select all  Expand view  RUN

    //->  PAGE UP 33 - PAGE DOWN 34
    oFld:aDialogs[8]:bKeyDown := { | nKey | IF ( nKey = 33, ( Click(),       ;
    oFld:SetOption( 7 ), oFld:SetFocus(), oFld:Refresh() ),                  ;
                                            IF ( nKey = 34, ( Click(),       ;
    oFld:SetOption( 9 ), oFld:SetFocus(), oFld:Refresh() ), ) ) }
 



Gracias.

Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7872
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: PAGE DOWN, no funciona?

Postby karinha » Fri Sep 17, 2021 7:33 pm

Pronto Master, ejemplo simples:

Code: Select all  Expand view  RUN

// \SAMPLES\TESTPDAW.PRG - 17/09/2021.

#Include "FiveWin.ch"

FUNCTION PGDN_DAWN_ERRO()

   LOCAL oDlg, oFld, oLbx, cAlias, cProve, oProve, cNombre, oNombre,         ;
         cProvincia, oProvincia
   LOCAL nKey := VK_RETURN

   USE Customer NEW SHARED
   GO TOP

   cAlias := ALIAS()

   cProve     := ( cAlias )->FIRST
   cNombre    := ( cAlias )->STREET
   cProvincia := ( cAlias )->CITY

   DEFINE DIALOG oDlg FROM 3, 3 TO 20, 70 TITLE "Teste de Page Dawn en GET"

   oDlg:lHelpIcon := .F.

   @ 10, 5 FOLDEREX oFld PIXEL PROMPT "&Proveedor", "&Datos mercancías"      ;
      SIZE 250, 100

   @ 20, 5 SAY "Código:" OF oFld:aDialogs[1] SIZE 60, 10 PIXEL

   @ 20, 100 SAY oProve var cProve OF oFld:aDialogs[1] SIZE 60, 10 PIXEL

   @ 30, 5 SAY "Razón social" OF oFld:aDialogs[1] SIZE 60, 10 PIXEL

   IF Set( _SET_INSERT, ! Set( _SET_INSERT ) )
      Set( _SET_INSERT, ! Set( _SET_INSERT ) )
   ENDIF

   @ 30, 100 GET oNombre VAR cNombre OF oFld:aDialogs[1] SIZE 100, 10 PIXEL  ;
      VALID( VERIFY_PGDN_ERRO( cNombre, nKey ) )

    oNombre:cToolTip := "PAGE DOWN no funciona asi?"

   @ 40, 5 SAY "Provincia" OF oFld:aDialogs[1] SIZE 60, 10 PIXEL

   @ 40, 100 GET oProvincia VAR cProvincia OF oFld:aDialogs[1] SIZE 100, 10 ;
      PIXEL

   @ 60, 50 BUTTON "&Grabar" OF oFld:aDialogs[1] SIZE 40, 10 PIXEL ;
      ACTION( GRAVAR_CUSTOMER_NOW() )

   @ 60, 150 BUTTON "&Salir" OF oFld:aDialogs[1] SIZE 40, 10 PIXEL ;
      ACTION ( oDlg:End() ) CANCEL

   ACTIVATE DIALOG oDlg CENTERED

   IF Set( _SET_INSERT, ! Set( _SET_INSERT ) )
      Set( _SET_INSERT, ! Set( _SET_INSERT ) )
   ENDIF

RETURN NIL

FUNCTION GRAVAR_CUSTOMER_NOW()

   ? [Gravar Todo Aqui]

RETURN NIL

FUNCTION VERIFY_PGDN_ERRO( cCNombre, nKey )

   // VK_NEXT PAGE DOWN key
   IF GETASYNCKEY( VK_NEXT ) // NO FUNCIONA

      ? [NO FUNCIONA?]

      RETURN( .T. )

   ENDIF

   DO CASE
   CASE nKey = VK_END .OR. GETKEYSTATE( VK_NEXT ) // No funciona

     ? [NO FUNCIONA, PORQUE? ]

     RETURN( .T. )

   ENDCASE

   IF GETASYNCKEY( VK_TAB )  // FUNCIONA
      RETURN( .T. )
   ENDIF

   IF GETASYNCKEY( VK_UP )
      RETURN( .F. )
   ENDIF

   IF GETASYNCKEY( VK_DOWN ) // FUNCIONA
      RETURN( .T. )
   ENDIF

   IF EMPTY( cCNombre ) .AND. GETASYNCKEY( VK_RETURN ) // FUNCIONA.

      ? [Vacio e funciona]

      RETURN( .T. )

   ENDIF

RETURN( .F. )

// FIN
 


Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7872
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: PAGE DOWN, no funciona?

Postby Euclides » Fri Sep 17, 2021 7:52 pm

Ó Joãozinho...
Coloque isto abaixo do DEFINE DIALOG ... de ..\SAMPLES\TESTFOLD.PRG
Code: Select all  Expand view  RUN

   nY := 1
   oDlg:bKeyDown := {|nKey| iif( nKey = 33, (nY:=iif(nY=4, 1, nY+1), oFld:SetOption(nY)), iif( nKey = 34, (nY:=iif(nY=1, 4, nY-1), oFld:SetOption(nY)),)) }
 

Desculpe a brincadeira...
Euclides
User avatar
Euclides
 
Posts: 156
Joined: Wed Mar 28, 2007 1:19 pm

Re: PAGE DOWN, no funciona?

Postby karinha » Fri Sep 17, 2021 8:17 pm

Euclides wrote:Ó Joãozinho...
Coloque isto abaixo do DEFINE DIALOG ... de ..\SAMPLES\TESTFOLD.PRG
Code: Select all  Expand view  RUN

   nY := 1
   oDlg:bKeyDown := {|nKey| iif( nKey = 33, (nY:=iif(nY=4, 1, nY+1), oFld:SetOption(nY)), iif( nKey = 34, (nY:=iif(nY=1, 4, nY-1), oFld:SetOption(nY)),)) }
 

Desculpe a brincadeira...
Euclides


Grande Euclides. Este código que você postou, é para navegar entre FOLDERs, e desta forma(modelo), deixa o pulo dos Folders Lento. Quanto a isso, eu não tenho problemas Euclides.

A minha dúvida surgiu em um VALID no GET, que eu queria, que ao se acionar o PAGE DOWN, automaticamente pularia para o próximo GET, ou iria para a Função de Impressão ou para qualquer outro lugar que eu quisesse por exemplo.

Teste o exemplo que eu postei que você vai entender. Não quero pular nos FOLDERS, isso está funcionando normal. Quero entender, porquê o VALID ignora a tecla PAGE DOWN. entende? É somente uma curiosidade.

Obg. Abs.

Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7872
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 97 guests