FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour Show LINESTYLE of Xbrowse on line - (run with errors)
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Show LINESTYLE of Xbrowse on line - (run with errors)
Posted: Mon Oct 17, 2022 08:41 AM
I have this xbrowse and I put on buttonbar a button to activare the vertical Lines (hide or show)
the button call a method Marcar(nOpt)
nOpt can be 1/2/3 only 1 and 3 activated



at init the xbrowse have this configuration

for nOpt1

Code (fw): Select all Collapse
 
METHOD SetupBrowseVertical(nrecnos) CLASS TLOTTO
   local  nRecords := nRecnos

    WITH OBJECT ::oLbx
                      :nRowHeight    := 30
                      :nClrBorder := CLR_GRAY

                      :lHscroll            := .t.
                      :l2007               := .F.
                      :l2015               := .F.
                     // :nStretchCol         := STRETCHCOL_WIDEST
                      :lAllowRowSizing     := .F.
                      :lAllowColSwapping   := .F.
                      :lAllowColHiding     := .F.
                      :lRecordSelector     := .F.
                      :nColDividerStyle    := LINESTYLE_LIGHTGRAY
                      :nRowDividerStyle    := LINESTYLE_LIGHTGRAY



      FOR i := 2 TO LEN(:aCols)
         oCol := :aCols[ i ]
         oCol:nWidth   := 17
      NEXT

       FOR i := 1 TO 1
             oCol := :aCols[ i ]
             oCol:nWidth   := 60
             oCol:nColDividerStyle    := LINESTYLE_BLACK
             oCol:bClrStd := {|| { CLR_WHITE, RGB(255,0,0) } }
          NEXT


      END

      Return nil



for nOpt 3

Code (fw): Select all Collapse
 METHOD SetupBrowseHorizontal() CLASS TLOTTO

        WITH OBJECT ::oLbx
                      :nRowHeight    := 30
                      :nClrBorder := CLR_GRAY

                      :lHscroll            := .t.
                      :l2007               := .F.
                      :l2015               := .T.
                     // :nStretchCol         := STRETCHCOL_WIDEST
                      :lAllowRowSizing     := .F.
                      :lAllowColSwapping   := .F.
                      :lAllowColHiding     := .F.
                      :lRecordSelector     := .F.
                      :nColDividerStyle    := LINESTYLE_LIGHTGRAY
                      :nRowDividerStyle    := LINESTYLE_LIGHTGRAY

                  //    :SetGroupHeader( "Estrazione",  1,  2)
                      :SetGroupHeader( "Bari",        3,  7 )
                      :SetGroupHeader( "Cagliari",    8, 12 )
                      :SetGroupHeader( "Firenze",    13, 17 )
                      :SetGroupHeader( "Genova",     18, 22 )
                      :SetGroupHeader( "Milano",     23, 27 )
                      :SetGroupHeader( "Napoli",     28, 32 )
                      :SetGroupHeader( "Palermo",    33, 37 )
                      :SetGroupHeader( "Roma",       38, 42 )
                      :SetGroupHeader( "Torino",     43, 47 )
                      :SetGroupHeader( "Venezia",    48, 52 )
                      :SetGroupHeader( "Nazionale",  53, 57 )

      FOR i := 3 TO LEN(:aCols)
         oCol := :aCols[ i ]
         oCol:nWidth   := 17
      NEXT

          FOR i := 1 TO 1
             oCol := :aCols[ i ]
             oCol:nWidth   := 60
             oCol:nColDividerStyle    := LINESTYLE_BLACK
             oCol:bClrStd := {|| { CLR_WHITE, RGB(255,0,0) } }
          NEXT


       END

       RETURN NIL




on Source
Code (fw): Select all Collapse
 DEFINE BUTTON oSelf:oLines FILENAME ".\bitmaps\marca.png"     OF ::oBar    ;
      TOOLTIP "lines"  ACTION oSelf:Marcar(aShowCbx[1]:nAt)




I made this method
nPt1 -> must show the Lienstyle step 5 column

Code (fw): Select all Collapse
METHOD Marcar(nOpt ) CLASS TLOTTO
      local  nRecords := val(::nRecnos)
      local i,oCol

      ::lMarcar:=!::lMarcar


      IF nOpt=1
        //Vert
         If ::lMarcar

         FOR i := 1 TO (nRecords*5)  STEP 5
             oCol := ::oLbx:aCols[ i ]
             oCol:nColDividerStyle    := LINESTYLE_BLACK
          NEXT


       ELSE

          FOR i := 1 TO (nRecords*5) STEP 5
             oCol := ::oLbx:aCols[ i ]
             oCol:nColDividerStyle    := LINESTYLE_LIGHTGRAY
          NEXT
        Endif

      ELSEIf nOpt=2
         //venus

      ELSEIf nOpt=3
          // Horiz

         IF ::lMarcar
         FOR i := 2 TO 55  STEP 5
             oCol := ::oLbx:aCols[ i ]
             oCol:nColDividerStyle    := LINESTYLE_BLACK
          NEXT

      ELSE

          FOR i := 2 TO 55  STEP 5
             oCol := ::oLbx:aCols[ i ]
             oCol:nColDividerStyle    := LINESTYLE_LIGHTGRAY
          NEXT
       Endif

      Endif
 
      return nil



why not run ?
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: Show LINESTYLE of Xbrowse on line
Posted: Thu Oct 20, 2022 07:16 AM

Any solution please

Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Show LINESTYLE of Xbrowse on line
Posted: Thu Oct 20, 2022 02:54 PM

Dear Silvio, if possible, make a DEMO, and send it to Mr. Nages to look at. I think this is pretty expensive to develop.

Estimado Silvio, si es posible, haga una DEMO y envíela al Sr. Nages para que la vea. Creo que esto es bastante caro de desarrollar.

Regards, saludos.

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: Show LINESTYLE of Xbrowse on line
Posted: Thu Oct 20, 2022 03:27 PM
karinha wrote:Dear Silvio, if possible, make a DEMO, and send it to Mr. Nages to look at. I think this is pretty expensive to develop.

Estimado Silvio, si es posible, haga una DEMO y envíela al Sr. Nages para que la vea. Creo que esto es bastante caro de desarrollar.

Regards, saludos.






it is here
Code (fw): Select all Collapse
#include "fivewin.ch"

REQUEST DBFCDX

//----------------------------------------------------------------------------//

function Main()

   test1()

return nil

//----------------------------------------------------------------------------//

INIT PROCEDURE PrgInit

   RddSetDefault( "DBFCDX" )

   SET DATE ITALIAN
   SET DELETED     ON
   SET CENTURY     ON
   SET EPOCH TO    YEAR( DATE() ) - 20
//   SET MULTIPLE    OFF

return

//----------------------------------------------------------------------------//

static function Test1()

   local aData:= { ;
            { "17.08.2019",76,83,39,10,61,90,32,55,33,67},;
            { "20.08.2019",44, 4,25,29,66,74,36,55,73,30},;
            { "22.08.2019",89,54,42,12,10,35,24,46,35,47},;
            { "24.08.2019",30,64,38,60,55,44,49,66,11,16},;
            { "27.08.2019",68,11,16,72,80,15, 1,62,76,83},;
            { "29.08.2019",31,35,47,80, 2,72,12, 4,39,10},;
            { "31.08.2019",69,11,28,51,53,36,66,77,25,29},;
            { "03.09.2019",73,30,15,59,62,36, 6,24, 4,25}}
   local aColors := { ;
            {0,0xa9a9a9},{0,0x0000ff},{0,0x4848ff},{0,0x6f6fff},{0,0x32cd32}, ;
            {0,0xceb966},{0,0xd48d54},{0,0x9b8531},{0,0xff00ff}}

   local oDlg,oBar,oFont,oBrw,n
   local oNumber,oPlus,oCancel,oLines
   local lShowLines:=.f.

   DEFINE FONT oFont NAME "VERDANA" SIZE 0,-16
   DEFINE DIALOG oDlg SIZE 800,400 PIXEL TRUEPIXEL RESIZABLE FONT oFont ;
   TITLE "Test separator lines"

   DEFINE BUTTONBAR oBar OF oDlg SIZE 80,30 2015
   oBar:SetFont( oFont:Bold() )


DEFINE BUTTON oLines Prompt "Lines"     OF oBar    ;
      TOOLTIP "Show Lines"  ;
      ACTION  ShowLines(oBrw,@lShowLines)


  @ 30,05 XBROWSE oBrw SIZE -20,-20 PIXEL OF oDlg ;
      COLUMNS {1,2,3,4,5,6,7,8,9,10,11} ;
      HEADERS {"Date","1","2","3","4","5","1","2","3","4","5"} ;
      ARRAY aData LINES  NOBORDER FASTEDIT    //LINES

      SetupBrowseColor(oBrw)
      oBrw:CreateFromCode()

    *  ShowLines(oBrw,lShowlines)

   ACTIVATE DIALOG oDlg CENTERED
   RELEASE FONT oFont

   return nil


  Function ShowLines(oBrw,lShowLines)
   local  nRecords := 2
   local i

    WITH OBJECT oBrw
          :nMarqueeStyle   := 2
          :lColDividerComplete :=.f.

   If lShowlines
          FOR i := 1 TO (nRecords*5)  STEP 5
             oCol := oBrw:aCols[ i ]
             oCol:nColDividerStyle    := LINESTYLE_BLACK
          NEXT
         lShowlines:=.f.
   Else
           FOR i := 1 TO (nRecords*5)  STEP 5
             oCol := oBrw:aCols[ i ]
             oCol:nColDividerStyle    := LINESTYLE_LIGHTGRAY
          NEXT
          lShowlines:=.t.
       Endif

       END

       oBrw:refresh()


  return lShowlines




//-----------------------------------------------------//
Function SetupBrowseColor(oBrw)
       WITH OBJECT oBrw
          :nMarqueeStyle   := 2

         :lAllowRowSizing     := .f.
         :lAllowColSwapping   := .f.
         :lAllowColHiding     := .f.

         // NEW
         :lAllowSizings       := .f.
         :lAutoSaves          := .t.

         :lColDividerComplete :=.f.

       FOR i := 2 TO LEN(:aCols)
         oCol := :aCols[ i ]
         oCol:nWidth   := 17
      NEXT

         :nColDividerStyle    := LINESTYLE_LIGHTGRAY
         :nRowDividerStyle    := LINESTYLE_LIGHTGRAY
         :SetStyle( 2018 )

   END
return nil
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Show LINESTYLE of Xbrowse on line
Posted: Thu Oct 20, 2022 09:03 PM
Estimado Silvio, explícate mejor, a partir de esta modificación que hice. Estoy muy confundido.

Dear Silvio, explain better, from this modification I made. I'm very confused.

Code (fw): Select all Collapse
// C:\FWH..\SAMPLES\LINESSIL.PRG

#include "fivewin.ch"

REQUEST DBFCDX

STATIC oBrw, lShowLines := .F.

FUNCTION Main()

   test1()

RETURN nil

INIT PROCEDURE PrgInit

   RddSetDefault( "DBFCDX" )

   SET DATE ITALIAN
   SET DELETED     ON
   SET CENTURY     ON
   SET EPOCH TO    YEAR( DATE() ) - 20

RETURN

STATIC FUNCTION Test1()

   LOCAL aData := { ;
      { "17.08.2019", 76, 83, 39, 10, 61, 90, 32, 55, 33, 67 }, ;
      { "20.08.2019", 44, 4, 25, 29, 66, 74, 36, 55, 73, 30 }, ;
      { "22.08.2019", 89, 54, 42, 12, 10, 35, 24, 46, 35, 47 }, ;
      { "24.08.2019", 30, 64, 38, 60, 55, 44, 49, 66, 11, 16 }, ;
      { "27.08.2019", 68, 11, 16, 72, 80, 15, 1, 62, 76, 83 }, ;
      { "29.08.2019", 31, 35, 47, 80, 2, 72, 12, 4, 39, 10 }, ;
      { "31.08.2019", 69, 11, 28, 51, 53, 36, 66, 77, 25, 29 }, ;
      { "03.09.2019", 73, 30, 15, 59, 62, 36, 6, 24, 4, 25 } }

   LOCAL aColors := { ;
      { 0, 0xa9a9a9 }, { 0, 0x0000ff }, { 0, 0x4848ff }, { 0, 0x6f6fff }, { 0, 0x32cd32 }, ;
      { 0, 0xceb966 }, { 0, 0xd48d54 }, { 0, 0x9b8531 }, { 0, 0xff00ff } }

   LOCAL oDlg, oBar, oFont, n
   LOCAL oNumber, oPlus, oCancel, oLines

   DEFINE FONT oFont NAME "VERDANA" SIZE 0, - 16

   DEFINE DIALOG oDlg SIZE 800, 400 PIXEL TRUEPIXEL RESIZABLE FONT oFont ;
      TITLE "Test separator lines"

   DEFINE BUTTONBAR oBar OF oDlg SIZE 80, 30 2015
   oBar:SetFont( oFont:Bold() )

   DEFINE BUTTON oLines PROMPT "Lines"     OF oBar    ;
      TOOLTIP "Show Lines"  ;
      ACTION  ShowLines( oBrw, lShowLines )

      //ACTION  ShowLines( oBrw, @lShowLines )

   @ 30, 05 XBROWSE oBrw SIZE - 20, - 20 PIXEL OF oDlg ;
      COLUMNS { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } ;
      HEADERS { "Date", "1", "2", "3", "4", "5", "1", "2", "3", "4", "5" } ;
      ARRAY aData LINES  NOBORDER FASTEDIT    //LINES

   WITH OBJECT oBrw

      oBrw:CreateFromCode()

      ShowLines( oBrw, lShowlines )

      SetupBrowseColor( oBrw )

      oBrw:Refresh()
      oBrw:SetFocus()

   END

   ACTIVATE DIALOG oDlg CENTERED

   RELEASE FONT oFont

RETURN nil

FUNCTION ShowLines( oBrw, lShowLines )

   LOCAL  nRecords := 2
   LOCAL i, oCol

   WITH OBJECT oBrw

      :nMarqueeStyle   := 2
      :lColDividerComplete := .F.

      IF lShowlines

         FOR i := 1 TO ( nRecords * 5 )  STEP 5
            oCol := oBrw:aCols[ i ]

            oCol:nColDividerStyle := LINESTYLE_BLACK

         NEXT
         lShowlines := .F.
      ELSE
         FOR i := 1 TO ( nRecords * 5 )  STEP 5
            oCol := oBrw:aCols[ i ]

            oCol:nColDividerStyle := LINESTYLE_LIGHTGRAY
         NEXT
         lShowlines := .T.
      ENDIF

   END

   oBrw:Refresh()
   oBrw:SetFocus()

RETURN lShowlines

FUNCTION SetupBrowseColor( oBrw )

   LOCAL I, oCol

   WITH OBJECT oBrw

      // :nMarqueeStyle   := 2
      // :nMarqueeStyle   := MARQSTYLE_HIGHLWIN7
      //:nMarqueeStyle   := MARQSTYLE_HIGHLROW
      :nMarqueeStyle    := MARQSTYLE_HIGHLCELL

      :lAllowRowSizing     := .F.
      :lAllowColSwapping   := .F.
      :lAllowColHiding     := .F.

      // NEW
      :lAllowSizings       := .F.
      :lAutoSaves          := .T.

      :lColDividerComplete := .F.

      FOR i := 2 TO LEN( :aCols )
         oCol := :aCols[ i ]
         oCol:nWidth   := 17
      NEXT



      :nColDividerStyle := LINESTYLE_LIGHTGRAY
      :nRowDividerStyle := LINESTYLE_LIGHTGRAY

      :SetStyle( 2018 )

   END

RETURN nil


Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: Show LINESTYLE of Xbrowse on line
Posted: Fri Oct 21, 2022 06:34 AM
No your sample not run here !!!


the :nMarqueeStyle must be 2

at init it must be



if the user press the button then



if the user press the button then



possible that I can not do this, there is something that certainly escapes us

posible que no pueda hacer esto, hay algo que seguro se nos escapa
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Show LINESTYLE of Xbrowse on line
Posted: Fri Oct 21, 2022 01:35 PM
Dear Silvio, y ahora, que falta? Confused... hahahahahaha,

Code (fw): Select all Collapse
// C:\FWH..\SAMPLES\LINESSIL.PRG

#include "fivewin.ch"

REQUEST DBFCDX

STATIC oBrw, lShowLines := .F.

FUNCTION Main()

   test1()

RETURN nil

INIT PROCEDURE PrgInit

   RddSetDefault( "DBFCDX" )

   SET DATE ITALIAN
   SET DELETED     ON
   SET CENTURY     ON
   SET EPOCH TO    YEAR( DATE() ) - 20

RETURN

STATIC FUNCTION Test1()

   LOCAL aData := { ;
      { "17.08.2019", 76, 83, 39, 10, 61, 90, 32, 55, 33, 67 }, ;
      { "20.08.2019", 44, 4, 25, 29, 66, 74, 36, 55, 73, 30 }, ;
      { "22.08.2019", 89, 54, 42, 12, 10, 35, 24, 46, 35, 47 }, ;
      { "24.08.2019", 30, 64, 38, 60, 55, 44, 49, 66, 11, 16 }, ;
      { "27.08.2019", 68, 11, 16, 72, 80, 15, 1, 62, 76, 83 }, ;
      { "29.08.2019", 31, 35, 47, 80, 2, 72, 12, 4, 39, 10 }, ;
      { "31.08.2019", 69, 11, 28, 51, 53, 36, 66, 77, 25, 29 }, ;
      { "03.09.2019", 73, 30, 15, 59, 62, 36, 6, 24, 4, 25 } }

   LOCAL aColors := { ;
      { 0, 0xa9a9a9 }, { 0, 0x0000ff }, { 0, 0x4848ff }, { 0, 0x6f6fff }, { 0, 0x32cd32 }, ;
      { 0, 0xceb966 }, { 0, 0xd48d54 }, { 0, 0x9b8531 }, { 0, 0xff00ff } }

   LOCAL oDlg, oBar, oFont, n
   LOCAL oNumber, oPlus, oCancel, oLines

   DEFINE FONT oFont NAME "VERDANA" SIZE 0, - 16

   DEFINE DIALOG oDlg SIZE 800, 400 PIXEL TRUEPIXEL RESIZABLE FONT oFont ;
      TITLE "Test separator lines"

   DEFINE BUTTONBAR oBar OF oDlg SIZE 80, 30 2015
   oBar:SetFont( oFont:Bold() )

   DEFINE BUTTON oLines PROMPT "Lines"     OF oBar    ;
      TOOLTIP "Show Lines"  ;
      ACTION  ShowLines( oBrw, lShowLines )

      //ACTION  ShowLines( oBrw, @lShowLines )

   @ 30, 05 XBROWSE oBrw SIZE - 20, - 20 PIXEL OF oDlg ;
      COLUMNS { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } ;
      HEADERS { "Date", "1", "2", "3", "4", "5", "1", "2", "3", "4", "5" } ;
      ARRAY aData LINES  NOBORDER FASTEDIT    //LINES

   WITH OBJECT oBrw

      oBrw:CreateFromCode()

      ShowLines( oBrw, lShowlines )

      SetupBrowseColor( oBrw )

      oBrw:Refresh()
      oBrw:SetFocus()

   END

   ACTIVATE DIALOG oDlg CENTERED

   RELEASE FONT oFont

RETURN nil

FUNCTION ShowLines( oBrw, lShowLines )

   LOCAL  nRecords := 2
   LOCAL i, oCol

   WITH OBJECT oBrw

      :nMarqueeStyle   := 2
      :lColDividerComplete := .F.

      IF lShowlines

         FOR i := 1 TO ( nRecords * 5 )  STEP 5
            oCol := oBrw:aCols[ i ]

            oCol:nColDividerStyle := LINESTYLE_BLACK

         NEXT
         lShowlines := .F.
      ELSE
         FOR i := 1 TO ( nRecords * 5 )  STEP 5
            oCol := oBrw:aCols[ i ]

            oCol:nColDividerStyle := LINESTYLE_LIGHTGRAY
         NEXT
         lShowlines := .T.
      ENDIF

   END

   oBrw:Refresh()
   oBrw:SetFocus()

RETURN lShowlines

FUNCTION SetupBrowseColor( oBrw )

   LOCAL I, oCol, nBkMode

   WITH OBJECT oBrw

      :nMarqueeStyle := 2
      // :nMarqueeStyle := MARQSTYLE_HIGHLWIN7
      // :nMarqueeStyle := MARQSTYLE_HIGHLROW
      // :nMarqueeStyle := MARQSTYLE_HIGHLCELL
      // :nMarqueeStyle := MARQSTYLE_NOMARQUEE

      // :lMultiSelect := .F.

      :lAllowRowSizing     := .F.
      :lAllowColSwapping   := .F.
      :lAllowColHiding     := .F.

      // NEW
      :lAllowSizings       := .F.
      :lAutoSaves          := .T.

      :lColDividerComplete := .F.
      :lRecordSelector     := .F. // poner o no, COL de la flechita de la izq

      FOR i := 2 TO LEN( :aCols )

         oCol := :aCols[ i ]
         oCol:nWidth   := 17

      NEXT

      //:nColDividerStyle := LINESTYLE_LIGHTGRAY
      //:nRowDividerStyle := LINESTYLE_LIGHTGRAY
      :nColDividerStyle := LINESTYLE_BLACK
      :nRowDividerStyle := LINESTYLE_BLACK

      // :nClrBorder  := CLR_GRAY
      // :lDrawBorder := .T.
      :nColorBox := CLR_HRED

      // :lColChangeNotify := .T.
      // :bChange          := { |o| if( o:nColSel<>1, ( o:=1, o:RefreshCurrent() ), nil ) }

      // oCol:bClrSelFocus := {|| { CLR_BLACK, { { 1, RGB( 252, 235, 220 ), RGB( 255, 0,0 ) } }}}

      :SetStyle( 2018 )

   END

RETURN nil


Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: Show LINESTYLE of Xbrowse on line
Posted: Fri Oct 21, 2022 01:56 PM
karinha wrote:Dear Silvio, y ahora, que falta? Confused... hahahahahaha,

Code (fw): Select all Collapse
// C:\FWH..\SAMPLES\LINESSIL.PRG

#include "fivewin.ch"

REQUEST DBFCDX

STATIC oBrw, lShowLines := .F.

FUNCTION Main()

   test1()

RETURN nil

INIT PROCEDURE PrgInit

   RddSetDefault( "DBFCDX" )

   SET DATE ITALIAN
   SET DELETED     ON
   SET CENTURY     ON
   SET EPOCH TO    YEAR( DATE() ) - 20

RETURN

STATIC FUNCTION Test1()

   LOCAL aData := { ;
      { "17.08.2019", 76, 83, 39, 10, 61, 90, 32, 55, 33, 67 }, ;
      { "20.08.2019", 44, 4, 25, 29, 66, 74, 36, 55, 73, 30 }, ;
      { "22.08.2019", 89, 54, 42, 12, 10, 35, 24, 46, 35, 47 }, ;
      { "24.08.2019", 30, 64, 38, 60, 55, 44, 49, 66, 11, 16 }, ;
      { "27.08.2019", 68, 11, 16, 72, 80, 15, 1, 62, 76, 83 }, ;
      { "29.08.2019", 31, 35, 47, 80, 2, 72, 12, 4, 39, 10 }, ;
      { "31.08.2019", 69, 11, 28, 51, 53, 36, 66, 77, 25, 29 }, ;
      { "03.09.2019", 73, 30, 15, 59, 62, 36, 6, 24, 4, 25 } }

   LOCAL aColors := { ;
      { 0, 0xa9a9a9 }, { 0, 0x0000ff }, { 0, 0x4848ff }, { 0, 0x6f6fff }, { 0, 0x32cd32 }, ;
      { 0, 0xceb966 }, { 0, 0xd48d54 }, { 0, 0x9b8531 }, { 0, 0xff00ff } }

   LOCAL oDlg, oBar, oFont, n
   LOCAL oNumber, oPlus, oCancel, oLines

   DEFINE FONT oFont NAME "VERDANA" SIZE 0, - 16

   DEFINE DIALOG oDlg SIZE 800, 400 PIXEL TRUEPIXEL RESIZABLE FONT oFont ;
      TITLE "Test separator lines"

   DEFINE BUTTONBAR oBar OF oDlg SIZE 80, 30 2015
   oBar:SetFont( oFont:Bold() )

   DEFINE BUTTON oLines PROMPT "Lines"     OF oBar    ;
      TOOLTIP "Show Lines"  ;
      ACTION  ShowLines( oBrw, lShowLines )

      //ACTION  ShowLines( oBrw, @lShowLines )

   @ 30, 05 XBROWSE oBrw SIZE - 20, - 20 PIXEL OF oDlg ;
      COLUMNS { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } ;
      HEADERS { "Date", "1", "2", "3", "4", "5", "1", "2", "3", "4", "5" } ;
      ARRAY aData LINES  NOBORDER FASTEDIT    //LINES

   WITH OBJECT oBrw

      oBrw:CreateFromCode()

      ShowLines( oBrw, lShowlines )

      SetupBrowseColor( oBrw )

      oBrw:Refresh()
      oBrw:SetFocus()

   END

   ACTIVATE DIALOG oDlg CENTERED

   RELEASE FONT oFont

RETURN nil

FUNCTION ShowLines( oBrw, lShowLines )

   LOCAL  nRecords := 2
   LOCAL i, oCol

   WITH OBJECT oBrw

      :nMarqueeStyle   := 2
      :lColDividerComplete := .F.

      IF lShowlines

         FOR i := 1 TO ( nRecords * 5 )  STEP 5
            oCol := oBrw:aCols[ i ]

            oCol:nColDividerStyle := LINESTYLE_BLACK

         NEXT
         lShowlines := .F.
      ELSE
         FOR i := 1 TO ( nRecords * 5 )  STEP 5
            oCol := oBrw:aCols[ i ]

            oCol:nColDividerStyle := LINESTYLE_LIGHTGRAY
         NEXT
         lShowlines := .T.
      ENDIF

   END

   oBrw:Refresh()
   oBrw:SetFocus()

RETURN lShowlines

FUNCTION SetupBrowseColor( oBrw )

   LOCAL I, oCol, nBkMode

   WITH OBJECT oBrw

      :nMarqueeStyle := 2
      // :nMarqueeStyle := MARQSTYLE_HIGHLWIN7
      // :nMarqueeStyle := MARQSTYLE_HIGHLROW
      // :nMarqueeStyle := MARQSTYLE_HIGHLCELL
      // :nMarqueeStyle := MARQSTYLE_NOMARQUEE

      // :lMultiSelect := .F.

      :lAllowRowSizing     := .F.
      :lAllowColSwapping   := .F.
      :lAllowColHiding     := .F.

      // NEW
      :lAllowSizings       := .F.
      :lAutoSaves          := .T.

      :lColDividerComplete := .F.
      :lRecordSelector     := .F. // poner o no, COL de la flechita de la izq

      FOR i := 2 TO LEN( :aCols )

         oCol := :aCols[ i ]
         oCol:nWidth   := 17

      NEXT

      //:nColDividerStyle := LINESTYLE_LIGHTGRAY
      //:nRowDividerStyle := LINESTYLE_LIGHTGRAY
      :nColDividerStyle := LINESTYLE_BLACK
      :nRowDividerStyle := LINESTYLE_BLACK

      // :nClrBorder  := CLR_GRAY
      // :lDrawBorder := .T.
      :nColorBox := CLR_HRED

      // :lColChangeNotify := .T.
      // :bChange          := { |o| if( o:nColSel<>1, ( o:=1, o:RefreshCurrent() ), nil ) }

      // oCol:bClrSelFocus := {|| { CLR_BLACK, { { 1, RGB( 252, 235, 220 ), RGB( 255, 0,0 ) } }}}

      :SetStyle( 2018 )

   END

RETURN nil


Regards, saludos.



NOT RUN
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Show LINESTYLE of Xbrowse on line
Posted: Fri Oct 21, 2022 02:15 PM

Entonces, solo el maestro Nages te ayudará. Mi conocimiento de xBrowse es limitado.

So, only master Nages to help you. My knowledge of xBrowse is limited.

Regards, saludos.

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: Show LINESTYLE of Xbrowse on line
Posted: Wed Nov 02, 2022 09:34 PM

Nages, Please How I can resolve it ?

Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Show LINESTYLE of Xbrowse on line
Posted: Thu Nov 03, 2022 03:37 AM
At present, there is no way to change the color of the vertical divider color after creating the browse.
We will consider providing this in future versions.
Even then we will provide facility to change color of the pen ( GRAY to BLACK or any other color) but not the thickness of the Vertical Line.

For now, I will give you a small function, Using this function, you can change the color of the line at your will.
Please use this function till we provide the feature in the new versions.
Code (fw): Select all Collapse
function ColPenColor( oCol, nColor )

   if oCol:hColPen != nil
      DeleteObject( oCol:hColPen )
   endif

   oCol:hColPen := CreatePen( PS_SOLID, 1, nColor )
   oCol:oBrw:Refresh()

return nil
Regards



G. N. Rao.

Hyderabad, India
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: Show LINESTYLE of Xbrowse on line
Posted: Thu Nov 03, 2022 09:18 AM
nageswaragunupudi wrote:At present, there is no way to change the color of the vertical divider color after creating the browse.
We will consider providing this in future versions.
Even then we will provide facility to change color of the pen ( GRAY to BLACK or any other color) but not the thickness of the Vertical Line.

For now, I will give you a small function, Using this function, you can change the color of the line at your will.
Please use this function till we provide the feature in the new versions.
Code (fw): Select all Collapse
function ColPenColor( oCol, nColor )

   if oCol:hColPen != nil
      DeleteObject( oCol:hColPen )
   endif

   oCol:hColPen := CreatePen( PS_SOLID, 1, nColor )
   oCol:oBrw:Refresh()

return nil

thanks even if I didn't understand how to highlight the columns on my METHOD Marcar(nOpt ) CLASS TLOTTO
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: Show LINESTYLE of Xbrowse on line
Posted: Thu Nov 03, 2022 09:27 AM
before set all
:nColDividerStyle := LINESTYLE_LIGHTGRAY
:nRowDividerStyle := LINESTYLE_LIGHTGRAY
then
Code (fw): Select all Collapse
If lShowlines
       FOR i := 1 TO (nRecords*5)  STEP 5
             oCol := ::oLbx:aCols[ i ]
             ColPenColor( oCol, CLR_BLACK )
          NEXT
       else
          FOR i := 1 TO (nRecords*5)  STEP 5
             oCol := ::oLbx:aCols[ i ]
             ColPenColor( oCol, CLR_GRAY )
          NEXT
     Endif




run ok


a sample test
Code (fw): Select all Collapse
 
#include "fivewin.ch"

REQUEST DBFCDX

STATIC oBrw, lShowLines := .F.

FUNCTION Main()

   test1()

RETURN nil

INIT PROCEDURE PrgInit

   RddSetDefault( "DBFCDX" )

   SET DATE ITALIAN
   SET DELETED     ON
   SET CENTURY     ON
   SET EPOCH TO    YEAR( DATE() ) - 20

RETURN




STATIC FUNCTION Test1()

   LOCAL aData := { ;
      { "17.08.2019", 76, 83, 39, 10, 61, 90, 32, 55, 33, 67 }, ;
      { "20.08.2019", 44, 4, 25, 29, 66, 74, 36, 55, 73, 30 }, ;
      { "22.08.2019", 89, 54, 42, 12, 10, 35, 24, 46, 35, 47 }, ;
      { "24.08.2019", 30, 64, 38, 60, 55, 44, 49, 66, 11, 16 }, ;
      { "27.08.2019", 68, 11, 16, 72, 80, 15, 1, 62, 76, 83 }, ;
      { "29.08.2019", 31, 35, 47, 80, 2, 72, 12, 4, 39, 10 }, ;
      { "31.08.2019", 69, 11, 28, 51, 53, 36, 66, 77, 25, 29 }, ;
      { "03.09.2019", 73, 30, 15, 59, 62, 36, 6, 24, 4, 25 } }

   LOCAL aColors := { ;
      { 0, 0xa9a9a9 }, { 0, 0x0000ff }, { 0, 0x4848ff }, { 0, 0x6f6fff }, { 0, 0x32cd32 }, ;
      { 0, 0xceb966 }, { 0, 0xd48d54 }, { 0, 0x9b8531 }, { 0, 0xff00ff } }

   LOCAL oDlg, oBar, oFont, n
   LOCAL oNumber, oPlus, oCancel, oLines
   local lShowLines:=.f.

   DEFINE FONT oFont NAME "VERDANA" SIZE 0, - 16

   DEFINE DIALOG oDlg SIZE 800, 400 PIXEL TRUEPIXEL RESIZABLE FONT oFont ;
      TITLE "Test separator lines"

   DEFINE BUTTONBAR oBar OF oDlg SIZE 80, 30 2015
   oBar:SetFont( oFont:Bold() )

   DEFINE BUTTON oLines PROMPT "Lines"     OF oBar    ;
      TOOLTIP "Show Lines"  ;
      ACTION  SetupBrowseColor( oBrw,2,@lShowLines )


   @ 30, 05 XBROWSE oBrw SIZE - 20, - 20 PIXEL OF oDlg ;
      COLUMNS { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } ;
      HEADERS { "Date", "1", "2", "3", "4", "5", "1", "2", "3", "4", "5" } ;
      ARRAY aData LINES  NOBORDER FASTEDIT    //LINES

   WITH OBJECT oBrw

      oBrw:CreateFromCode()
      SetupBrowseColor( oBrw,2,.f. )
      oBrw:Refresh()
      oBrw:SetFocus()

   END

   ACTIVATE DIALOG oDlg CENTERED

   RELEASE FONT oFont

RETURN nil


FUNCTION SetupBrowseColor( oBrw,nRecords,lShowlines )
   LOCAL I, oCol

   WITH OBJECT oBrw
       :nMarqueeStyle   := 3
      :lAllowRowSizing     := .F.
      :lAllowColSwapping   := .F.
      :lAllowColHiding     := .F.


      :lAllowSizings       := .F.
      :lAutoSaves          := .T.

      FOR i := 2 TO LEN( :aCols )
         oCol := :aCols[ i ]
         oCol:nWidth   := 17
      NEXT
      :nColDividerStyle := LINESTYLE_LIGHTGRAY
      :nRowDividerStyle := LINESTYLE_LIGHTGRAY
      :SetStyle( 2018 )


     IF lShowlines
         FOR i := 1 TO ( nRecords * 5 )  STEP 5
            oCol := oBrw:aCols[ i ]
            // NEW
             ColPenColor( oCol, CLR_BLACK )
         NEXT
      ELSE
         FOR i := 1 TO ( nRecords * 5 )  STEP 5
            oCol := oBrw:aCols[ i ]
            // NEW
            ColPenColor( oCol, CLR_HGRAY )
         NEXT

      ENDIF

   END
    lShowLines:=!lShowLines
RETURN lShowLines

//------------------------------------------------------//
//Nages
//http://forums.fivetechsupport.com/viewtopic.php?f=3&t=42314&sid=8eb86f74267dbc90ab43c4a11fe60be0#p254238
function ColPenColor( oCol, nColor )
   if oCol:hColPen != nil
      DeleteObject( oCol:hColPen )
   endif
   oCol:hColPen := CreatePen( PS_SOLID, 1, nColor )
   oCol:oBrw:Refresh()
return ni
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Show LINESTYLE of Xbrowse on line - RESOLVED !!!
Posted: Thu Nov 03, 2022 02:34 PM
run ok
good to know.
Regards



G. N. Rao.

Hyderabad, India
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: Show LINESTYLE of Xbrowse on line - RESOLVED !!!
Posted: Fri Nov 04, 2022 02:18 PM
nageswaragunupudi wrote:
run ok
good to know.
Nages,
there is a problem when I use vertical scrollbar, see this ( I not Know if a question of memory or of xbrowse)


Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com