Clase TIconGroup ( SOLUCIONADO )
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Thu Jul 30, 2015 7:18 pm
by cuatecatl82
Buenas tardes a todos los compañeros:
He trabajando un rato con la Clase TIconGroup sin muchos problemas, la vez pasada pude implementar el uso del Mouse y las teclas de avance de pagina, en esta ocasion les pido de su colaboracón a los master de las Clases, y es que no encuentro como caambiar el bendito color del icono seleccionado, ya que en la clase no esta definido, la hereda desde la clase TControl.
![Image](http://sim1.subirimagenes.net/img/2015/07/30//150730091434515039.jpg)
Solo he logrado cambiar el color del icono cuando pierde el foco, pero no cuando esta seleccionado, ni de forma condicional el control evalua cada click dentro del control sin permitir el color del selector:
http://www.mediafire.com/download/wz68p9mwce29yjm/IGroup.rarMaestro Antonio ojala le pueda dar una revisada... Saludos..
Re: Clase TIconGroup
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Fri Jul 31, 2015 11:52 am
by Antonio Linares
Victor,
Parace que el pintado de los iconos se realiza con la función ExtDrawIcon()
Y hay un método METHOD ShowFocus( lFocused ) CLASS TIconGroup desde donde se llama a ExtDrawIcon()
En concreto:
::aCoors[ nAt ] = ExtDrawIcon( hDC, ::aCoors[ nAt, 1 ], ::aCoors[ nAt, 2 ], ;
::aIcons[ nAt ], ::aPrompts[ nAt ], hFont, ;
::nClrText, ::nClrPane, lFocused, .t., ::lEdit )
Yo probaría a cambiar el color de ::nClrPane
Prueba asi:
oIconGroup:bGotFocus := { || ::nClrPane := nColorQueDesees }
Re: Clase TIconGroup
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Sat Aug 01, 2015 12:44 am
by cuatecatl82
Asi es Maestro, he tocado el método METHOD ShowFocus( lFocused ) CLASS TIconGroup pensando que desde ahi se podria, pero es negativo, solo se puede modificar los colores del texto y fondo del icono cuando pierde el foco, revisando en la clase no encontre de donde obtiene el color que por defecto toma el Icono al recibir el foco, por eso dedusco que lo hereda desde la Clase TControl. así es como queda con lo que me sugiere y que ya habia probado, pero no es lo que necesito.
Habra que realiza algun cambio en la clase..?
![Image](http://sia1.subirimagenes.net/img/2015/08/01/150801024121346081.jpg)
Saludos.
Re: Clase TIconGroup
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Sat Aug 01, 2015 4:05 am
by joseluisysturiz
Saludos, disculpa mi ignorancia, pero mas o menos que funcion cumple esta clase y como para que se podria usar en una aplicacion o que tipo de aplicacion es la mas conveniente.? en pocas palabras...cual es el uso mas adecuadao.? gracias, saludos...
![Shocked :shock:](./images/smilies/icon_eek.gif)
Re: Clase TIconGroup
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Sat Aug 01, 2015 7:53 am
by Antonio Linares
Victor,
El problema viene de la función EXTDRAWICON() que selecciona los colores de esta fortma:
COLORREF nClrFore = bFocused ? GetSysColor( COLOR_CAPTIONTEXT )
: hb_parnl( 7 );
COLORREF nClrBack = bFocused ? GetSysColor( COLOR_ACTIVECAPTION )
: hb_parnl( 8 );
Al dibujar el elemento seleccionado está usando COLOR_ACTIVECAPTION
La manera más simple de solucionarlo sería que modificases el código de esta función y que lo añadas a tu PRG principal
Re: Clase TIconGroup
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Sat Aug 01, 2015 1:27 pm
by cuatecatl82
Jose Luis:
La Clase TIconGroupsirve para poder dibujar iconos en un control para simular un explorador de archivos propio de Fivewin, puede Mostrar el icono, cambiarle el nombre, arrastrarlos moverlos u ordenarlos y cada uno puede realizar una accion, es una clase que casi nadie usa pero que para mi me ha serviso en varios proyectos.
Saludos.
Espectacular Maestro: Solucionado el Problema le agradesco Mucho.. Saludos.-
Re: Clase TIconGroup
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Sat Aug 01, 2015 2:26 pm
by joseluisysturiz
cuatecatl82 wrote:Jose Luis:
La Clase TIconGroupsirve para poder dibujar iconos en un control para simular un explorador de archivos propio de Fivewin, puede Mostrar el icono, cambiarle el nombre, arrastrarlos moverlos u ordenarlos y cada uno puede realizar una accion, es una clase que casi nadie usa pero que para mi me ha serviso en varios proyectos.
Saludos.
Espectacular Maestro: Solucionado el Problema le agradesco Mucho.. Saludos.-
Muchas gracias por tu explicacion, pero lo que mas me gustaria saber es como en que tipo de aplicaciones lo usas o si podrias poner alguna imagen de tus sistemas usandola para ver si le puedo sacar algun beneficion, a veces el que no usemos una clase es porque es nuestrtas aplicaciones no sabemos para que nos seria util, o a lo mejor el no conocerla, hacemos algo de una forma, cuando con dicha clase, seria mas facil y comodo, gracias,saludos...
![Shocked :shock:](./images/smilies/icon_eek.gif)
Re: Clase TIconGroup ( SOLUCIONADO )
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Sat Aug 01, 2015 4:21 pm
by cuatecatl82
Un pequeño ejemplo propio con codigo fuente y todas las modificaciones que le he realizado incluidas:
http://www.mediafire.com/download/pf74sqy7e22cchi/IGroup2.zipEl archivo de ejemplo original de Ramon
Avendaño esta en .\samples\Testigro.prg, si no mal recuerdo el generador de aplicaciones Verce tambien lo usa
![Image](http://sia1.subirimagenes.net/img/2015/08/01/150801062436126942.jpg)
Saludos.
Re: Clase TIconGroup ( SOLUCIONADO )
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Sat Aug 01, 2015 4:37 pm
by joseluisysturiz
cuatecatl82 wrote:Un pequeño ejemplo propio con codigo fuente y todas las modificaciones que le he realizado incluidas:
http://www.mediafire.com/download/pf74sqy7e22cchi/IGroup2.zipEl archivo de ejemplo original de Ramon
Avendaño esta en .\samples\Testigro.prg, si no mal recuerdo el generador de aplicaciones Verce tambien lo usa
![Image](http://sia1.subirimagenes.net/img/2015/08/01/150801062436126942.jpg)
Saludos.
Super, lo descargo y reviso...ya se me vienen idesas de como usarla en mis sistemas, por lo menos para las conexion entre las estaciones de trabajo...o hasta para hacer exportaciones en los reportes, opciones para unidades donde hacer respaldo, etc...gracias man...saludos...
![Shocked :shock:](./images/smilies/icon_eek.gif)
Re: Clase TIconGroup ( SOLUCIONADO )
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Sat Aug 01, 2015 5:01 pm
by cnavarro
Muy bueno, gracias
Solo un add si me lo permites, añade
- Code: Select all Expand view
#ifndef _WIN64
... hb_retnl(
// y
... hb_parnl(
#else
... hb_retnll(
// y
... hb_parnll(
#endif
A mi se me olvidan habitualmente
Re: Clase TIconGroup ( SOLUCIONADO )
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Sat Aug 01, 2015 5:08 pm
by joseluisysturiz
cnavarro wrote:Muy bueno, gracias
Solo un add si me lo permites, añade
- Code: Select all Expand view
#ifndef _WIN64
... hb_retnl(
// y
... hb_parnl(
#else
... hb_retnll(
// y
... hb_parnll(
#endif
A mi se me olvidan habitualmente
Disculpa NAVARRO, no entendi tu comentario, esto que recomiendas es como para que..? saludos...
![Shocked :shock:](./images/smilies/icon_eek.gif)
Re: Clase TIconGroup ( SOLUCIONADO )
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Sat Aug 01, 2015 5:17 pm
by cnavarro
joseluisysturiz wrote:cnavarro wrote:Muy bueno, gracias
Solo un add si me lo permites, añade
- Code: Select all Expand view
#ifndef _WIN64
... hb_retnl(
// y
... hb_parnl(
#else
... hb_retnll(
// y
... hb_parnll(
#endif
A mi se me olvidan habitualmente
Disculpa NAVARRO, no entendi tu comentario, esto que recomiendas es como para que..? saludos...
![Shocked :shock:](./images/smilies/icon_eek.gif)
Para poder usarlo en 32 o 64 bits
Nada que disculpar, a mandar
![Very Happy :D](./images/smilies/icon_biggrin.gif)
Re: Clase TIconGroup ( SOLUCIONADO )
![Post Post](./styles/prosilver/imageset/icon_post_target.gif)
Posted:
Sat Aug 01, 2015 5:23 pm
by joseluisysturiz
Ok, confirmas mi sospecha que era para eso, jejej..nunca esta demas confirmar, gracias y saludos...
![Shocked :shock:](./images/smilies/icon_eek.gif)