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.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":
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:
4) Definimos el browse como se hace normalmente:Code: Select all
hBmp1 := LoadBitmap(GETRESOURCES(),"HEADER1")) hBmp2 := LoadBitmap(GETRESOURCES(),"HEADER2")) hBmp3 := LoadBitmap(GETRESOURCES(),"HEADER3")) hBmp4 := LoadBitmap(GETRESOURCES(),"HEADER4"))
5) Definimos sus headers:Code: Select all
@ 0,205 LISTBOX oBrw FIELDS ....
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:
7) la función CamHeader(<oBrw>,<nOrden>):Code: Select all
oBrw:aActions :={{|| NIL},{|x| CamHeader(x,1)},{|x| CamHeader(x,2)}}
Y eso es todo.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.)
uan de wbrowse...
- jose_murugosa
- Posts: 943
- Joined: Mon Feb 06, 2006 4:28 pm
- Location: Uruguay
- Contact:
Saludos/Regards,
José Murugosa
FWH + Harbour + Bcc7. Una seda!
José Murugosa
FWH + Harbour + Bcc7. Una seda!
-
- Posts: 845
- Joined: Sun Oct 09, 2005 5:36 pm
- Location: la laguna, mexico.