uan de wbrowse...

uan de wbrowse...

Postby Francisco Horta » Mon Oct 17, 2005 2:14 am

Hola Foro,

como puedo combinar imagen y texto en un header?
Gracias,
Paco :)
Francisco Horta
 
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Postby Antonio Linares » Mon Oct 17, 2005 4:47 pm

Paco,

No está implementado como tal, pero si revisas source\classes\wbrowse.prg verás la función wBrwLine que es la encargada de dibujar cada línea del browse.

No sería muy complicado modificarla para que dibuje una imagen en una determinada columna de la cabecera.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42065
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: uan de wbrowse...

Postby Hernan Diego Ceccarelli » Mon Oct 17, 2005 6:13 pm

Francisco Horta wrote:Hola Foro,

como puedo combinar imagen y texto en un header?
Gracias,
Paco :)


Tal como dice Antonio, no seria muy dificil modificar codigo, aunque no es para todo el mundo :(. !!!

Respecto a la TW Version 18 (soon que la tengo en beta) puedes hacerlo desde un bloque de codigo nuevo, ejecutado desde C, para no retardar tanto el pintado de las cabeceras, y puedes ejecutar 2 cosas.
Code: Select all  Expand view
Los bloques se ejecutan por celda al momento de pintado. Dichas variables son ::bPrevPaint y ::bNextPaint. El primero se usa para
poder escribir en la celda en forma personalizada ANTES del pintado estandard de la celda,  y ::bNextPaint se ejecuta DESPUES del pintado normal. Esto le da FLEXIBILIDAD TOTAL a la clase.  Valores que puede devolver el bloque ::bPrevPaint;
      >---> <0> El pintado por defecto NO se hara, por lo tanto es su resposabilidad cubrir  el area total de la celda
      >---> <1> El pintado por defecto SI se hara EXCEPTO el Texto, por lo tanto es su resposabilidad pintar un texto especifico en la celda.
      >---> <Otro valor distino> Indicara que SI debe hacerse el pintado por defecto de la celda.
Los bloques reciben los siguientes parametros:

{|nRow,nCol,nStyle,hDC,cChar,nTop,nLeft,nBottom,nRight| <su codigo> }


Entre otras cosas, tendremos como novedades headers nativas sobre 32bit opcional, con correcta implementacion pudiendo en tiempo de ejecucion cambiar a viejas o nuevas, posibilidad de freezear el browse permitiendo que no se refresque ni se muevan punteros de ningun tipo en el pintado, algo asi como sacar una foto y dejarlo asi hasta que uno decida, mejoras de velocidad, doble buffer opcional y sin doble buffer tambien el browse no produce parpadeos practicamente, algunas nuevas implementaciones, posiblidad ejecutar manejo de keychar y keydown definidos por el usuario, etc,etc,etc. estas seran algunas de las cosas nuevas. Pronto en las bateas :D

Una MINI implementacion un beta tester:, como vemos usa los nuevos bloques y usa los bColor, alineaciones especiales y solo pinta caracteres en el cotextor de dispositivo. No usa imagenes pero podria haberlo hecho :D
Image
User avatar
Hernan Diego Ceccarelli
 
Posts: 84
Joined: Fri Oct 07, 2005 4:51 pm
Location: Rosario - Santa Fe - Argentina

HDC - se ve ESPECTACULAR...

Postby RuFer » Mon Oct 17, 2005 7:49 pm

Hernán lo que se ve parece muy bueno.

Muchas gracias desde ya...

Saludos

Ruben Fernandez
User avatar
RuFer
 
Posts: 140
Joined: Sat Oct 08, 2005 5:16 pm
Location: Uruguay

Re: uan de wbrowse...

Postby Francisco Horta » Mon Oct 17, 2005 11:09 pm

UUUPPPPPSSS Hernan; Fabulosa !!! Grandiosa !!!
100% comentario aceptado, no todos tenemos la capacidad de mover fuentes !!, jejeje puede ser mi caso, pero voy a ver que saco.
Esperamos (de seguro todo el foro) ansiosos tu version 18
Suerte !!
Salu2
Paco
Francisco Horta
 
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Postby Yannis » Tue Oct 18, 2005 6:25 am

Hernan, lo que describes es una maravilla ! :)
Las celdas personalizadas abren nuevos horizontes, y desde ya estoy pensando como disfrutar este nuevo browser.
Felicidades por este excelente trabajo !

Un saludo
User avatar
Yannis
 
Posts: 13
Joined: Fri Oct 07, 2005 2:41 pm
Location: Greece

Postby Hernan Diego Ceccarelli » Tue Oct 18, 2005 2:56 pm

Yannis wrote:Hernan, lo que describes es una maravilla ! :)
Las celdas personalizadas abren nuevos horizontes, y desde ya estoy pensando como disfrutar este nuevo browser.
Felicidades por este excelente trabajo !

Un saludo


Exacto, si bien las celdas personalizadas hacen a la flexibilidad, NO hay que abusar de los tiempos de pintado, entonces ahi juega un papel muy importante cuan optimizado sea ese codigo. Si la funcion esta hecha en lenguaje C seria todo mas rapido, en PRG tambien seria posible, pero bueno, dependera de cuan complicada sea. Las pruebas hechas sobre PRG han sido satisfactorias realmente y comviene mucho usar el doble buffer en estos casos, casi obligatoriamente.

Salu2
User avatar
Hernan Diego Ceccarelli
 
Posts: 84
Joined: Fri Oct 07, 2005 4:51 pm
Location: Rosario - Santa Fe - Argentina

Postby Yannis » Tue Oct 18, 2005 4:25 pm

Hernan,
Entiendo lo que dices sobre la optimizacion del codigo. Es evidente que los .prg seran mucho mas lentos. Un trabajo mas para uno como yo que del lenguaje C no entiende un....
Pero, este browser ya es un paso gigante en adelante !!!.
Muchas gracias por tu tiempo !
Un saludo,
User avatar
Yannis
 
Posts: 13
Joined: Fri Oct 07, 2005 2:41 pm
Location: Greece

Re: una de wbrowse...

Postby Francisco Horta » Wed Oct 19, 2005 3:40 am

En efecto, no entiendo nada de .c asi que mejor ahi le dejo, no se me da, :cry:
Gracias a ambos Antonio y Hernan
Salu2
Paco
Francisco Horta
 
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Postby Francisco Horta » Mon Jul 30, 2007 9:22 pm

Hernan,
Esta nueva version 18, esta super!!, algun dia se liberará o sera de paga?
si es asi, para cuando tendriamos noticias del precio y una liberacion?
salu2
paco
Francisco Horta
 
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Re: uan de wbrowse...

Postby R.F. » Wed Aug 01, 2007 12:27 am

Francisco Horta wrote:Hola Foro,

como puedo combinar imagen y texto en un header?
Gracias,
Paco :)


Algo como esto ????:

Image

Esta hecho con el browse de Hernan.
Saludos
R.F.
R.F.
 
Posts: 840
Joined: Thu Oct 13, 2005 7:05 pm

Postby jose_murugosa » Wed Aug 01, 2007 2:00 am

Sinceramente desde que conocí el "Browse de Hernán" lo hice mi browse, por su simplicidad y rapidez.
Gracias Hernán por el tiempo que dedicas a esta herramienta y sobre todo por compartirla con la comunidad.
Tu trabajo es admirable.
Saludos/Regards,
José Murugosa
"Los errores en programación, siempre están entre la silla y el teclado y la IA!!"
User avatar
jose_murugosa
 
Posts: 1173
Joined: Mon Feb 06, 2006 4:28 pm
Location: Uruguay

Postby Francisco Horta » Wed Aug 01, 2007 2:16 pm

Efectivamente rene, tambien uso el browse de hernan, aqui mi duda viene en que yo no he podido mezclar, texto+imagen en las cabeceras, y en el sample que publica hdc utiliza los headers nativos, y en la version 17 no los tiene implementados.
Asi como jose yo tambien uso wbrowse desde que la use la primera vez, ya le he metido mano en algunos detalles y pues me he atrevido a subirla al foro sin consultar a hdc, esto para compartirlo con todos, gracias hdc por tu aporte.
salu2
Paco
Francisco Horta
 
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Re: uan de wbrowse...

Postby Susy » Wed Aug 01, 2007 2:33 pm

RF wrote:
Francisco Horta wrote:Hola Foro,

como puedo combinar imagen y texto en un header?
Gracias,
Paco :)


Algo como esto ????:

Image

Esta hecho con el browse de Hernan.


Hola maestro Rene, como esta corazon pues, me llamo Susy y me interesa la clase de Hernan y el ejemplo que muestras con la imagen y celdas con sus totales, es de paga o podria aportar gratuito a los demas usuarios y si me podria enviar un claro ejemplo que muestras en la imagen, gracias y se lo agradecere eternamente maestro, besos y abrazos desde michoacan , su amiga Susy :)
susan_mx@hotmail.com
Susy
 
Posts: 35
Joined: Wed Nov 15, 2006 4:04 pm

Postby R.F. » Wed Aug 01, 2007 8:20 pm

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"

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  Expand view
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  Expand view
@ 0,205 LISTBOX oBrw FIELDS ....


5) Definimos sus headers:

Code: Select all  Expand view
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  Expand view
oBrw:aActions :={{|| NIL},{|x| CamHeader(x,1)},{|x| CamHeader(x,2)}}


7) la función CamHeader(<oBrw>,<nOrden>):
Code: Select all  Expand view
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.
Last edited by R.F. on Wed Aug 01, 2007 10:54 pm, edited 1 time in total.
Saludos
R.F.
R.F.
 
Posts: 840
Joined: Thu Oct 13, 2005 7:05 pm

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 53 guests