Saludos.
He estado trabajando con tsbrowse 9.0 de M.Mercado (excelente), pero se me ha presentado un problema:
Ya que los registros de mis dbf's contienen muchos campos, intento por medio de una funcion pedir todos los datos que no se pueden ver en mi browse.
Hago esto:
@ nRenBrw,00 BROWSE oBROWSE SIZE SIZE_LON,SIZE_ANC;
FONT oFontb UPDATE PIXEL OF oVENTANA;
COLOR COLOR_NEGRO,COLOR_GRIS
for i:=1 to len(COLUM)
ADD COLUMN TO BROWSE oBROWSE;
TITLE HEAD_CAM[i];
DATA COLU_BLO(i);
SIZE SIZE_CAM[i];
ALIGN JUST_FIL[i], DT_VERT;
EDITABLE MOVE DT_MOVE_RIGHT
oBROWSE:aColumns[i]:cFooting:=COLU_FOT(i)
oBROWSE:aColumns[i]:nFAlign :=JUST_FIL[i]
next
oBROWSE:lInitGoTop :=.f.
oBROWSE:lMChange :=.t.
oBROWSE:bChange :={||oBROWSE:DrawFooters()}
oBROWSE:nRowPos :=RENG_INICIO
oBROWSE:nLineStyle :=ESTILO_LINEA
oBROWSE:SetAlign(0,2,DT_CENTER)
oBROWSE:oBrush :=oBws
y por tengo una funcion ModiRegistro() donde generalmente hago lo basico para una modificacion o alta:
1. asigno los valores de los campos a variables locales si es modificacion, si es alta estos estan en blanco
2. creo los gets para su modificacion a alta
3. una vez capturados, hago esto:
if lAlta
append blank
endif
...reemplazo los datos
unlock
commit
al final
oBROWSE:Resfresh()
El PROBLEMA:
cuando se trata de una modificacion no hay nigun problema ya que simplemente hago un oBROWSE:DrawSelect(), el problema es en un nuevo registro, aunque hago el oBROWSE:Refresh() mi browse se distorciona y no me muesntra las filas del browse como de ser, se pierden, y solo moviendo arriba..abajo con las flechas me repinta las filas como son:
El caso, me muestra unas filas encima de otras o, me deja unas abajo que ya no se pueden mover.
Que podre hacer para que mi oBROWSE de repinte nuevamente con mis nuevos registros?