Consulta Poner Readonly Celdas Xbrowse " SOLUCIONADO"

Post Reply
remtec
Posts: 431
Joined: Fri May 12, 2017 2:50 pm

Consulta Poner Readonly Celdas Xbrowse " SOLUCIONADO"

Post by remtec »

Amigos muy buenas noches.

Tengo un Xbrowse con una serie de filas y columnas, que imprimen un calendario por mes y año. Necesito saber como puedo poner algunas Celdas Readonly, o Deshabilitar para acciones de Get o seleccion?

Muchos Saludos
Antonio

Codigo del Xbrowse:

Code: Select all

                 DEFINE FONT oFont1 NAME 'TAHOMA' SIZE 0,18    BOLD
                 DEFINE FONT oFont2 NAME 'TAHOMA' SIZE 0,-12   BOLD
                 DEFINE FONT oFont3 NAME 'TAHOMA' SIZE 0,-11   BOLD

               DEFINE DIALOG oDlg  SIZE 250,180 PIXEL  STYLE nOr( WS_POPUP, WS_VISIBLE, WS_DLGFRAME )

                 @ 00,70 SAY otitu3 PROMPT Mes1+"   "+Ano1  PIXEL OF oDlg COLORS RGB(12, 135, 27)   FONT oFont1

               @ 20, 10 XBROWSE oBrw SIZE -10,-10 PIXEL OF oDlg;
               DATASOURCE aAgenda ;
               COLUMNS 1,2,3,4,5,6,7;
               HEADERS "LU","MA","MI","JU","VI","SA","DO";
               CELL LINES NOBORDER
                 oBrw:lRecordSelector      := .f.
             oBrw:nColDividerStyle := LINESTYLE_INSET
             oBrw:nRowDividerStyle := LINESTYLE_INSET
                 oBrw:nOpacity    := 230
                 oBrw:SetStyle( 2018)
                 oBrw:nColorPen := CLR_RED
                 oBrw:lHScroll := .F. // Barra Horizontal
                 oBrw:lVScroll := .F. // Barra Ventical
               oBrw:CreateFromCode()
                 oBrw:nFreeze       := 7
                 For i=1 to 7
                         oBrw:aCols[ i ]:oDataFont := oFont3
                         oBrw:aCols[ i]:nDataStrAlign := AL_CENTER
                 Next i


              ACTIVATE DIALOG oDlg CENTERED


 
Last edited by remtec on Sat Nov 30, 2019 1:03 am, edited 1 time in total.
User avatar
FranciscoA
Posts: 1964
Joined: Fri Jul 18, 2008 1:24 am
Location: Chinandega, Nicaragua, C.A.

Re: Consulta Poner Readonly Celdas Xbrowse

Post by FranciscoA »

Antonio.
Mira si este ejemplo ayuda.

Code: Select all

#include "FiveWin.ch"

Function Main()
local oDlg, oBrw, n
LOCAL aAgenda := { {1,5,8,4,5,6,7} ,;
                   {1,4,9,4,5,6,7} ,;
                   {1,2,3,4,5,6,7} ,;
                   {1,5,0,4,5,6,7} ,;
                   {1,2,3,4,5,6,7} }

               DEFINE DIALOG oDlg  SIZE 254,180 PIXEL

               @ 20, 10 XBROWSE oBrw SIZE -10,-10 PIXEL OF oDlg;
               DATASOURCE aAgenda ;
               COLUMNS 1,2,3,4,5,6,7;
               HEADERS "LU","MA","MI","JU","VI","SA","DO";
               CELL LINES 

               WITH OBJECT oBrw:aCols[3]
                  :nEditType := 1 
                  :bEditWhen := {|| oBrw:aCols[2]:Value == 2 }  //col 3 es editable si valor col 2 = 2
               END

               oBrw:CreateFromCode()

              ACTIVATE DIALOG oDlg CENTERED
Return nil
 
Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.

Fwxh1204-MySql-TMySql
remtec
Posts: 431
Joined: Fri May 12, 2017 2:50 pm

Re: Consulta Poner Readonly Celdas Xbrowse

Post by remtec »

Hola Francisco

Como estas?

Muchas gracias por tu respuesta y por tu ayuda. Por la molestia de mostrarme tu codigo, el cual si usare para otra parte del Sistema, donde debo actualizar valores directos en el Xbrowse, a si es que Super tu Codigo.

Creo que me exprese mal en lo que necesito.

Lo sucede es que tengo un calendario que genero, mostrando solo los dias de atención de cada Dr, por lo que habrán muchas celdas que se mostraran vacias, me idea era de bloquear todas aquellas celdas vacias que no pudiera dar Click en ellas, solo encontre la forma de contrar en una función que tengan accion aquellas que tengan un valor distinto de espacio.

Muchos Saludos.
Antonio

Use esta linea:

Code: Select all

                            WITH OBJECT oBrw3
                                        :bLDblClick:={||(Sele_Dia(oBrw3: SelectedCol (): Value))}   // De esta forma puedo extraer el valor de la Celda.
                            END

 
Post Reply