Usando TestxBrw del directorio samples, haz estas dos modificaciones:
1) Deja solo 30 registros en customer.dbf
2) Modifica HorzRow() como lo que sigue:
- Code: Select all Expand view RUN
STATIC FUNCTION HorzRow( oWnd )
local oChild, oBrw, oFont
DEFINE FONT oFont NAME "TAHOMA" SIZE 0, -12
DEFINE WINDOW oChild TITLE "Horizontal lines & Row selector browse" MDICHILD OF oWnd
oBrw := TXBrowse():New( oWnd )
oBrw:SetFont( oFont )
oBrw:nMarqueeStyle := MARQSTYLE_HIGHLROW
oBrW:nColDividerStyle := LINESTYLE_BLACK
oBrw:nRowDividerStyle := LINESTYLE_BLACK
oBrw:SetRDD()
oBrw:CreateFromCode()
oChild:oClient := oBrw
ACTIVATE WINDOW oChild ON INIT oBrw:SetFocus()
RETURN NIL
Es decir agregarle el FONT y cambiamos los separadores de filas y columnas.
Luego lo ejecutas y entras en esa opción. Bajas hasta llegar al último registro usando la tecla hacia abajo. Cuando llegue al último registro, le dás a RePag, es decir que haga un pageUp, con lo que me deja el browse "descolocado", desincronizado con la información de la DBF.
El error es reproducible. Aparentemente el ajuste no es correcto cuando al pintar hay que ajustar el valor de nRowSel
Un saludo,
Carlos.