FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Efecto Pijama
Posts: 1076
Joined: Fri Oct 07, 2005 10:41 PM
Efecto Pijama
Posted: Thu Dec 24, 2009 06:07 AM

Amigos,

He revisado el foro y no he encontrado un ejemplo con el efecto pijama utilizando array y en modo edición.

Alguien tendría un ejemplo?

Saludos y gracias de antemano.

William, Morales

Saludos



méxico.sureste
Posts: 196
Joined: Tue Jul 01, 2008 06:34 PM
Re: Efecto Pijama
Posted: Fri Dec 25, 2009 01:47 AM

Hola

Conozco el efecto del Pisco Peruano, buenazo !!! ultima edicion y sin Array.... pero no del efecto Pijama, a cual te refieres

Feliz Navidad !!

Luis Ponce
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Efecto Pijama
Posted: Fri Dec 25, 2009 11:59 AM
William,

En FWH\samples\mallorca.prg añade esta línea:

Code (fw): Select all Collapse
   oBrw:bClrStd := { || If( oBrw:nArrayAt % 2 == 0, { CLR_BLACK, RGB( 224, 236, 255 ) }, { CLR_BLACK, RGB( 189, 211, 253 ) } ) }


regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1076
Joined: Fri Oct 07, 2005 10:41 PM
Re: Efecto Pijama
Posted: Sat Dec 26, 2009 05:20 PM

Antonio,

Perfecto. Gracias

William, Morales

Saludos



méxico.sureste
Posts: 1076
Joined: Fri Oct 07, 2005 10:41 PM
Re: Efecto Pijama
Posted: Sat Dec 26, 2009 09:12 PM

Antonio,

El ejemplo mallorca.prg funciona a la perfección.

En mi caso uso una clase intermedia por ejemplo

CLASS TWXBROWSEW FROM TXBROWSE
ENCLASS

y no aplica el color.

sigo checando, pero no veo la diferencia, por lo menos en el fuente de la xbrowse.

espero comentarios

William, Morales

Saludos



méxico.sureste
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Efecto Pijama
Posted: Sat Dec 26, 2009 09:15 PM

William,

Puedes mostrar un ejemplo pequeño y completo que podamos probar ? gracias :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1076
Joined: Fri Oct 07, 2005 10:41 PM
Re: Efecto Pijama
Posted: Sat Dec 26, 2009 11:14 PM

Antonio,

El problema es el TRANSPARENT, al colocarlo pierde los colores.

Sigo revisando..

Editado:

La clausula transparent que afecta es la que se colocan en el dialogo, la DATA lTransparent de la clase xbrowse no afecta el pintado, de hecho es como si no estuviese.

William, Morales

Saludos



méxico.sureste
Posts: 1076
Joined: Fri Oct 07, 2005 10:41 PM
Re: Efecto Pijama
Posted: Sun Dec 27, 2009 06:56 AM
Antonio,

Aquí el ejemplo (mallorca.prg), con colocarle TRANSPARENT o quitarlo se ve el detalle.

Este ejemplo es con recursos y el control del browse se debe de llamar TXBROWSEW

Code (fw): Select all Collapse
#INCLUDE "FiveWin.ch"
#INCLUDE "XBrowse.ch"

STATIC oWnd
STATIC oWndChild
STATIC oDlg
STATIC oBrw
STATIC aLin := {}

function Main()
   LOCAL i

   for i := 1 TO 6
      AAdd( aLin, { i, "Description " + Str( i ), Replicate( Chr( 64 + i ), 2 ) } )
   next

   DEFINE WINDOW oWnd TITLE "INCOS" MDI
   ACTIVATE WINDOW oWnd ON INIT dialogo()

RETURN NIL

FUNCTION dialogo()
   DEFINE DIALOG oDlg RESOURCE "BRW" TRANSPARENT

   oBrw := TxBrowseW():New( oDlg )
   oBrw:SetArray( aLin )
   oBrw:lTransparent      := .f.
   oBrw:l2007             := .t.
   oBrw:lHScroll          := .t.
   oBrw:lVScroll          := .t.
   oBrw:lAllowColSwapping := .f.
   oBrw:lRecordSelector   := .t.
   oBrw:lAllowRowSizing   := .f.
   oBrw:nStretchCol       := STRETCHCOL_LAST
   oBrw:nColDividerStyle  := LINESTYLE_BLACK
   oBrw:nMarqueeStyle     := MARQSTYLE_HIGHLROWMS
   oBrw:bClrStd           := { || If( oBrw:nArrayAt % 2 == 0, { CLR_BLACK, RGB( 224, 236, 255 ) }, { CLR_BLACK, RGB( 189, 211, 253 ) } ) } 

   oBrw:aCols[1]:cHeader      := 'Cod'
   oBrw:aCols[1]:cEditPicture := '99'
   oBrw:aCols[1]:bClrEdit     := oBrw:bClrStd
   oBrw:aCols[1]:bOnPostEdit  := { | oCol, xVal, nKey | If( nKey == VK_RETURN, aLin[ oBrw:nArrayAt,1] := xVal,) }
   oBrw:aCols[1]:nEditType    := EDIT_GET
   oBrw:aCols[1]:bEditValid   := { | oGet, oCol | Valida( oGet, oCol ) }
   //--
   oBrw:aCols[2]:cHeader      := 'Description'
   oBrw:aCols[2]:bClrEdit     := oBrw:bClrStd
   oBrw:aCols[2]:bOnPostEdit  := { | oCol, xVal, nKey | If( nKey == VK_RETURN, ( aLin[ oBrw:nArrayAt,2] := xVal, oBrw:GoDown() ),) }
   oBrw:aCols[2]:nEditType    := EDIT_GET
   //--
   oBrw:aCols[3]:cHeader      := 'Cd'
   oBrw:aCols[3]:bClrEdit     := oBrw:bClrStd
   oBrw:aCols[3]:bOnPostEdit  := { | oCol, xVal, nKey | If( nKey == VK_RETURN, aLin[ oBrw:nArrayAt, 3 ] := xVal,) }
   oBrw:aCols[3]:nEditType    := EDIT_LISTBOX
   oBrw:aCols[3]:aEditListBound := ;
   oBrw:aCols[3]:aEditListTxt   := { "AA", "BB", "CC", "DD", "EE", "FF", "GG", "HH" }

   oBrw:CreateFromResource( 401 )
   oBrw:bRClicked = { | nRow, nCol | ShowPopup( nRow, nCol, oBrw, aLin ) }
   oDlg:oClient:=oBrw

   ACTIVATE DIALOG oDlg

RETURN NIL

STATIC FUNCTION Valida( oGet, oCol )

   local nVal := 0

   if oGet:Value() > 6
      MsgAlert( "Must be lower than 7" )
      if MsgGet( "New value", "Enter number between 1 and 6", @nVal )
         if nVal > 0 .and. nVal < 7
            oGet:VarPut( nVal )
            oCol:PostEdit()
            return .T.
          endif
      endif
      return .F.
    endif

return .T.

function ShowPopup( nRow, nCol, oBrw, aLin )

   local oMenu

   MENU oMenu POPUP 2007
      MENUITEM "Add" ACTION ( AAdd( aLin, ;
         { Len( aLin ) + 1 , "New item    " + Str( Len( aLin ) + 1 ), ;
         Replicate( Chr( 64  + Len( aLin ) + 1 ), 2 ) } ), oBrw:Refresh() )
      MENUITEM "Delete" ACTION ( ADel( aLin, oBrw:nArrayAt ), ASize( aLin, Len( aLin ) - 1 ), oBrw:Refresh() )
      MENUITEM "Select 3rd Row" ACTION ( oBrw:GoTop(), oBrw:nArrayAt := 3, oBrw:nRowSel := 3, oBrw:Refresh() )
      MENUITEM "Delete All" ACTION ( ASize( aLin, 0 ), oBrw:Refresh() )
      MENUITEM "Report" ACTION oBrw:Report()
      MENUITEM "Excel"  ACTION oBrw:ToExcel()
   ENDMENU

   ACTIVATE POPUP oMenu WINDOW oBrw AT nRow, nCol

return nil

CLASS TXBROWSEW FROM TXBROWSE
ENDCLASS


Gracias de antemano
William, Morales

Saludos



méxico.sureste
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Efecto Pijama
Posted: Sun Dec 27, 2009 08:37 PM

William,

Puedes proporcionar el RC que has usado ? gracias

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1076
Joined: Fri Oct 07, 2005 10:41 PM
Re: Efecto Pijama
Posted: Sun Dec 27, 2009 10:01 PM
Antonio,

Con gusto

aqui'ta
Code (fw): Select all Collapse
BRW DIALOGEX DISCARDABLE 6, 18, 210, 142
STYLE DS_SHELLFONT|WS_POPUP|DS_MODALFRAME|DS_CONTEXTHELP|DS_3DLOOK|WS_CAPTION|WS_SYSMENU|WS_VISIBLE
CAPTION "Dialog"
FONT 8, "MS Shell Dlg", 0, 0, 1
{
  CONTROL "Custom control", 401, "TXBROWSEW", 0x00000000, 0, 0, 208, 140
}
William, Morales

Saludos



méxico.sureste
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Efecto Pijama
Posted: Mon Dec 28, 2009 09:56 AM
William,

Prueba asi:
Code (fw): Select all Collapse
   ACTIVATE DIALOG oDlg ON INIT ( oBrw:lTransparent := .F., .T. )

De todas formas se ha arreglado en FWH 9.12 :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1076
Joined: Fri Oct 07, 2005 10:41 PM
Re: Efecto Pijama
Posted: Mon Dec 28, 2009 11:31 AM

Antonio,

Mil gracias

Simplemente perfecto.

William, Morales

Saludos



méxico.sureste

Continue the discussion