uan de wbrowse...

User avatar
jose_murugosa
Posts: 943
Joined: Mon Feb 06, 2006 4:28 pm
Location: Uruguay
Contact:

Post by jose_murugosa »

RF wrote:Ok, para todos ustedes, este es el secreto:

Como todo en FiveWin, son "efectos especiales", y en realidad, nada es lo que parece.

1) Necesitamos el Browse de Hernan, cualquier versión, (el truco funciona tambén con xBrowse) para mayor información sobre los browses de FW, les recomiendo que lean mi articulo "Browse VS Browse" en www.google.blogspot.com.

2) Es raro que el titulo de una cabecera cambie, asi que en realidad, lo que están viendo mis queridos amigos, es un bitmap que incluye el texto y la imagen, en realidad son 4 bitmap, 2 incluyen la imagen "habilitada" y 2 la imagen "deshabilitada":

Image


El color del fondo es lo de menos, recuerden que FW utiliza el byte 1,1 para definir el color de la transparencia

3) Antes de definir el browse, cargamos los bitmaps en la memoria:

Code: Select all

hBmp1 := LoadBitmap(GETRESOURCES(),"HEADER1"))
hBmp2 := LoadBitmap(GETRESOURCES(),"HEADER2"))
hBmp3 := LoadBitmap(GETRESOURCES(),"HEADER3"))
hBmp4 := LoadBitmap(GETRESOURCES(),"HEADER4"))
4) Definimos el browse como se hace normalmente:

Code: Select all

 @ 0,205 LISTBOX oBrw FIELDS ....
5) Definimos sus headers:

Code: Select all

 oBrw:aHeaders := {" ",hBmp1,hBmp3,"Tipo","SubTipo","Naturaleza"}

6) y luego para cambiar dinamicamente los headers con su respectivo bitmap en tiempo de ejecucion:

Code: Select all

oBrw:aActions :={{|| NIL},{|x| CamHeader(x,1)},{|x| CamHeader(x,2)}}
7) la función CamHeader(<oBrw>,<nOrden>):

Code: Select all

FUNCTION CamHeader(oBrw,nIndex)
   IF nIndex == 1
      (oBrw:cAlias)->(OrdSetFocus('numcuenta'))
//aqui viene la magia, volvemos apintar el header completo, cambiando los bmps del header
      oBrw:aHeaders := {" ",hBmp1,hBmp3,'Tipo','SubTipo','Naturaleza'}
   ELSE
      (oBrw:cAlias)->(OrdSetFocus('nomcta'))
      oBrw:aHeaders := {" ",hBmp2,hBmp4,'Tipo','SubTipo','Naturaleza'}
   ENDIF
   oBrw:Refresh()
RETURN (.T.)

Y eso es todo.
Muchas gracias René por compartir tus ideas y técnicas con nosotros, en particular para mí, esto es una obra de arte y es bueno saber que se puede contar con ti generosidad para compartira con los miembros de esta comunidad.
Saludos/Regards,
José Murugosa
FWH + Harbour + Bcc7. Una seda!
Francisco Horta
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Post by Francisco Horta »

Gracias rene, mas que bien, como simpre la solucion.
salu2
paco
Post Reply