Página 1 de 1

Sobre GDIPlus

Publicado: 28 Jun 2010, 00:24
por ero-Z
Hola a todos!, bueno al grano, quisiera preguntar una dudilla que tengo...

Os pongo en situación:

Estoy "desarrollando" un programa, el cual, esta creado sobre imagenes (no se si me he explicado bien, me refiero a que las imagenes forman el fondo, los botones..., normalmente no uso GDIPlus, ya que usaba imagenes .JPG) y bueno, hoy me dio por complicarme la cosa y me surgio esta duda... :smt012

Yo antes hacia eventos para cada imagen "GUICtrlSetOnEvent" para conseguir un "bonito efecto"... Hoy intente hacer una GUI transparente con una imagen .PNG de fondo (Con unos cantos redondeados :smt044 ) Pero me encontre con el problema de dar evento a esa imagen dibujada por GDIPlus :smt017 ...

Me preguntaba si a ustedes se les ocurre alguna manera de "capturar" si la imagen creada por GDIPlus es pulsada.

Disculpen si es una pregunta tonta, es la primera vez que me pongo con GDIPlus para estas cosas... :smt005

Gracias de antemano :-)

Re: Sobre GDIPlus

Publicado: 28 Jun 2010, 08:27
por Ximorro
No es ninguna tontería... así en principio es imposible asignarle un evento con GUICtrlSetOnEvent, sencillamente porque no es un control.
Así pensándolo rápido se me ocurren dos maneras, quizás haya otras:
1) Controlar cada click de ratón sobre el panel, y si las coordenadas están dentro de la extensión del botón dibujado lanzar el evento (lo más fácil es suponer que el botón es rectangular, como mucho redondo con la fórmula de la circunferencia...)
2) Lo más fácil: poner encima una etiqueta trasparente que responda al evento.

Por supuesto como el control está dibujado si quieres que cambie la imagen el pulsarlo, tener foco, etc... lo tienes que hacer "a mano".

Re: Sobre GDIPlus

Publicado: 28 Jun 2010, 12:08
por ero-Z
Entiendo... pense eso mismo, no es un objeto sino un dibujo :smt005

PD: Permiteme copiarte la idea de las etiquetas :smt044 y gracias por todo :smt047