Page 1 of 1

xbrowse

Posted: Wed Jul 31, 2013 11:23 pm
by Luisão PITBULL
colleagues there any command to display columns that are not visible without having to use the right arrow


thank you

Luiz Fernando

Re: xbrowse

Posted: Thu Aug 01, 2013 1:10 am
by FranciscoA
Hi, Luis.
This is just one example. You can improve it.

Code: Select all

oBrw:bKeyDown:= {|nKey| if(cValToChar(nKey) $ "96;97;98;99;100;101;102;103;104;105" .and. GetKeyState(VK_CONTROL), SeekCol(nKey,oBrw) ,) }

//-----------------------------
FUNCTION SeekCol(nKey,oBrw)
local n, nCol
local aKeys:={96,97,98,99,100,101,102,103,104,105}
local aChrKeys:={"0","1","2","3","4","5","6","7","8","9"}

nCol:=aChrKeys[Ascan(aKeys,nKey)] 
nCol:=Val(nCol)-1

  oBrw:GoLeftMost()
  For n:=1 to nCol
     oBrw:GoRight()
  Next
  oBrw:Refresh()
Return nil
 
code]Regards.

Re: xbrowse

Posted: Mon Aug 05, 2013 4:12 pm
by Luisão PITBULL
Colleague thanks for the reply


with his example he goes straight for the end.


Image

could not skip the middle image


thank you

Luiz Fernando

Re: xbrowse

Posted: Mon Aug 05, 2013 5:21 pm
by nageswaragunupudi
Mr Luiz Fernando

I am not very clear what you want.
Please check if this is what you want

Code: Select all

oBrw:nColOffSet := oBrw:LastDisplayPos( .t. ) + 1
oBrw:Refresh()

Re: xbrowse

Posted: Mon Aug 05, 2013 7:49 pm
by FranciscoA
Luiz,
The example works well with the numeric keys on the right of the keyboard.
If you want to use the alpha-numeric keys, also, you have to add his char.
If for example you are in column 4, and press Ctrl + 7, the cursor is positioned in column 7.
This we use in some of my browsers.
Maybe for the super headers? This I not tried yet.
Regards.

Re: xbrowse

Posted: Mon Aug 05, 2013 8:15 pm
by FranciscoA
Luiz,
Try this code more complete.

Code: Select all

#include.....

Static  nLapsus, cBusq

Function main()
   GetData()
Return

function GetData()
  nLapsus := Seconds(); cBusq:=""  

define dialog.....
redefine oBrw....
....
....
   oBrw:bKeyDown:= {|nKey| if(cValToChar(nKey) $ "96;97;98;99;100;101;102;103;104;105" .and. GetKeyState(VK_CONTROL), SeekCol(nKey,oBrw) ,) }

oDlg:End()
Return nil

//------------------------//
Function SeekCol(nKey,oBrw)
local cChar, nColBusc:=0,n
local aNKeys:={96,97,98,99,100,101,102,103,104,105,107,109,110}
local aChrNKeys:={"0","1","2","3","4","5","6","7","8","9","+","-","."}

If ( Seconds() - nLapsus ) > 2 .or. ( Seconds() - nLapsus ) < 0
   cBusq := ""
EndIf
nLapsus := Seconds()

if Ascan(aNKeys,nKey) != 0
   cChar:=aChrNKeys[Ascan(aNKeys,nKey)]
   cBusq+= cChar
else
   cBusq+= Upper(Chr(nKey))
endif

  nColBusc := Val(cBusq)

  oBrw:GoLeftMost()  //col 1 
  For n:=1 to nColBusc - 1
     oBrw:GoRight()
  Next
  oBrw:Refresh()

Return nil

 
Regards.

Re: xbrowse

Posted: Thu Aug 08, 2013 11:09 pm
by Luisão PITBULL
nageswaragunupudi, thanks for the feedback


Francisco, had ignored his response and test done only with the command oBrw: GoRight () now worked 100% thank you



Luiz Fernando