Tengo un xbrowse declarado ::nMarqueeStyle := MARQSTYLE_HIGHLROW pero pretendo que cuando le haga click sobre la cabecera de una columna ,esta se vuelva editable , al hacer el siguiente click esta tiene que volverse de nuevo no editable .
El caso es nEditType cambia a editable , pero luego al siguiente click no se anula , tampoco se anulan los codeblocks oSuper:bKeyDown = { | nKey | .T. }
oSuper:blDblClick := { | nRow, nCol, nKey | .t. }
mi codigo esta asi :
El caso es nEditType cambia a editable , pero luego al siguiente click no se anula , tampoco se anulan los codeblocks oSuper:bKeyDown = { | nKey | .T. }
oSuper:blDblClick := { | nRow, nCol, nKey | .t. }
mi codigo esta asi :
.....
//-------------- columna a editar ...................
oThis:= Self
oCol := :AddCol()
WITH OBJECT oCol
:cHeader := "Oferta"
:bLClickHeader := {|nMRow, nMCol, nFlags, Self| FbClick(SELF,oThis) }
:nDataStrAlign := AL_RIGHT
:bStrData := { || (::calias)->oferta }
END
......
// la funcion a la que llama el header al hacer click ..
STATIC FUNCTION FbClick(o,oSuper)
IF o:nEditType == 1
o:nEditType := 5
o:bOnPostEdit := {|o, v, n| iif( n != VK_ESCAPE, (oSuper:calias)->oferta := v , ) }
oSuper:oBrw:bKeyDown = { | nKey | .T. }
oSuper:oBrw:blDblClick := { | nRow, nCol, nKey | .t. }
ELSE
o:nEditType:= 1
o:bOnPostEdit := {|| .t. }
oSuper:oBrw:blDblClick := { | nRow, nCol, nKey |oSuper:Edit() }
oSuper:oBrw:bKeyDown = { | nKey | oSuper:KeyDown( nKey ) }
ENDIF
pausa( o:nEditType )
oSuper:oBrw:refresh()
RETURN nil