Page 1 of 1

AYUDA CON BROWSE CON ARRAY

Posted: Fri Jan 05, 2007 3:13 am
by A&C
tengo el siguiente problema que me esta calentando la cabeza:

Tengo un BROWSE con un ARRAY y no puedo borrar un registro de la matriz

el problema se me presenta ya q no puedo obtener la fila y la columna del Array atravez del BROWSE

cuando uso el BROWSE comun o sea ligado a uns DBF,, es facil borrar ya que el puntero me indica en que recno estoy y puedo borralo facil ,, pero con una matriz es diferente.. o no


alguien me puede orientar...


GRACIAS

Ojo: en clipper habia una instruccion q indicaba la fila y la columna era COLPOS y ROWPOS,, pero en fivewin no se cuales son

Posted: Fri Jan 05, 2007 9:52 am
by Garbi
Por ejemplo:

donde oBrwt:nAt es el numero de elemento a editar, borrar,modificar....

oBrwT:SetArray( tvisitas )
oBrwT:bKeyChar = { | nKey, nFlags | (lineas(nkey,oBrwt:nAt),oBrwt:refresh())}

ADD COLUMN to oBrwt DATA ARRAY ELEM 1 HEADER "Fecha" size 100
ADD COLUMN to oBrwt DATA ARRAY ELEM 2 HEADER "Tiempo" size 40
ADD COLUMN to oBrwt DATA ARRAY ELEM 3 HEADER "Motivo" size 100 RIGHT
ADD COLUMN to oBrwt DATA ARRAY ELEM 4 HEADER "Observaciones" size 100

REDEFINE BTNBMP aBoton[1] ID 504 RESOURCE "sumar" OF oFld:aDialogs[4];
tooltip oemtoansi("A¤adir Linea");
action (lineas(1,0),oBrwt:refresh(),(oBrwt:SetFocus(),.f.))

REDEFINE BTNBMP aBoton[2] ID 505 RESOURCE "restar" OF oFld:aDialogs[4];
tooltip oemtoansi("Borrar Linea");
action (lineas(2,oBrwt:nAt),oBrwt:Refresh(),(oBrwt:SetFocus(),.f.))

Posted: Fri Jan 05, 2007 11:13 am
by Garbi
Se me olvido incluir :

function lineas(vque,linea)
if vque = 1
AADD(TVISITAS,{CTOD(" / / "),space(50),0,""})
oBrwt:gobottom()
oBrwt:Refresh()

return nil
elseif vque = 2
adel(tvisitas,linea)
asize( tvisitas, len( tvisitas ) - 1 )
return nil
.........

Posted: Fri Jan 05, 2007 11:31 am
by A&C
Muchas Gracias por la explicacion me quedo clarito Garbi