Page 1 of 1

CheckBox en un xBrowse?

Posted: Mon Jul 01, 2024 7:09 pm
by Armando
Amigos del foro:

En un xBrowse tengo una columna cuyo contenido es un campo lógico,
definido con el siguiente código: (No uso FASTEDIT)

Code: Select all | Expand

                    WITH OBJECT :Acceso
                      :SetLogical()
                      :SetCheck(NIL,(.T.))
                    END

 
Si el usuario da doble clic sobre esta columna el contenido cambia de True a False y por ende
el ícono también cambia, la duda y pregunta, cómo puedo evitar esto?, es decir que no sea
modificable la columna.

Saludos y gracias por el apoyo

Re: CheckBox en un xBrowse?

Posted: Mon Jul 01, 2024 9:40 pm
by cmsoft
Podria ser asi?

Code: Select all | Expand

WITH OBJECT :Acceso
    :SetLogical()
    :nEditType := 0 // o EDIT_NONE
    :SetCheck(NIL,(.T.))
END

Re: CheckBox en un xBrowse?

Posted: Mon Jul 01, 2024 10:06 pm
by Armando
César:

No, no funcionó, se sigue modificando el ICONO.

Saludos y gracias

Re: CheckBox en un xBrowse?

Posted: Mon Jul 01, 2024 10:53 pm
by Cgallegoa
Armando,

Code: Select all | Expand

// nCol : Columna que no se quiere editar
oBrw:aCols[ nCol ]:bLDClickData := {|| NIL }

Re: CheckBox en un xBrowse?

Posted: Mon Jul 01, 2024 11:19 pm
by Armando
Carlos:

Excelente solución, funcionó de 100.

Saludos

Re: CheckBox en un xBrowse?

Posted: Tue Jul 02, 2024 9:05 am
by nageswaragunupudi
Simple

Code: Select all | Expand

:SetCheck( NIL, .t. )  // allows editing
:SetCheck( nil, .F. ) // does not allow eiditing

Re: CheckBox en un xBrowse?

Posted: Tue Jul 02, 2024 4:19 pm
by Armando
Mr. Rao:

I'm afraid it doesn't work, the checkbox icon from off to on to off changes, with FASTEDIT and without FASTEDIT, here is my code

Code: Select all | Expand

            REDEFINE XBROWSE oBrx ID 300 OF oDlg;
                DATASOURCE oRsMxu ;
                COLUMNS "MOD_DES", "USU_ACC" ;
                HEADERS "Módulo","Acceso";
                COLSIZES 312,50;
                PICTURES NIL,NIL;
                JUSTIFY {AL_LEFT,AL_CENTER};
                FOOTERS AUTOSORT //FASTEDIT

                WITH OBJECT oBrx
                    :l2007            := (.F.)
                    :lHScroll         := (.F.)
                    :lVScroll         := (.F.)
                    :nMarqueeStyle    := MARQSTYLE_HIGHLROW
                    :nColDividerStyle := LINESTYLE_LIGHTGRAY
                    :nRowDividerStyle := LINESTYLE_LIGHTGRAY
                    :nStretchCol      := STRETCHCOL_WIDEST
                    :nHeaderHeight      := 25
                    :nRowHeight         := 22
                    :nFooterHeight      := 25
                    :bClrHeader       := { || {CLR_WHITE,CLR_BLACK} }
                    :bClrFooter       := { || {CLR_WHITE,CLR_BLACK} }
                    :bClrSel          := { || IF( oBrx:KeyNo % oApp:nRowsInt == 0 ,{ CLR_BLACK, oApp:nRowParClr },{ CLR_BLACK, oApp:nRowNonClr }) }
                    :bClrSelFocus     := { || {oApp:nClrText, oApp:nClrBack} }
                    :bClrStd          := { || IF( oBrx:KeyNo % oApp:nRowsInt == 0 ,{ CLR_BLACK, oApp:nRowParClr },{ CLR_BLACK, oApp:nRowNonClr }) }
                    :nRecSelColor     := oApp:nRowParClr
                    :lDisplayZeros    := (.F.)   // zero values are not displayed. Added by GNRao. No need to use @Z
                    :blDblClick         := { | nRow, nCol, nKey | (Autoriza(oBrx),oBrx:SetFocus())}
                    :bKeyDown           := { | nKey, nFlags | IIF(nKey == VK_RETURN,(Autoriza(oBrx),oBrx:SetFocus()),)}

                    WITH OBJECT :aCols[01]
                        :cOrder := "A"
                    END

               WITH OBJECT :Acceso
                  :SetLogical()
                  :SetCheck(NIL,(.F.))
               END
            END
 
With best regards