
Problema con Api UpdateLayeredWindow?
#1
Posted 06 July 2011 - 04:03 PM
http://foro.elhacker...-t302356.0.html
Es hacer otro form o fake sobre el mismo que solo muestre los botones en el. como se menciona en este post
http://www.codeproje...gWithCtrls.aspx
Pero como lo trabajo bajo Delphi, estoy mas perdido que el Diego paseando en Rio con su camiseta de argentina... xD
O como este video :
Coca-Cola Copa America - Infiltrado Peru
Gracias
#2
Posted 06 July 2011 - 05:01 PM
El uso de la API UpdateLayeredWindow en una ventana transparente es problemática porque dejas de recibir los eventos OnPaint. Ningún control de esa ventana se va a pintar. Eso quiere decir que los debes pintar tu mismo.
Una solución es usar otra ventana no transparente y superponerla. Para dejar sólo los controles visibles, lo mejor es usar regiones que delimiten sólo esos controles. Osea, tienes una ventana transparente con una imagen y encima colocas otra en la que solo se ven controles. Si quieres que los controles adopten determinadas posiciones, deberás encontrarlas con máscaras o con determinados colores o en el canal alfa de una imagen. Recolocas el control y luego determinas las regiones que serán visibles.
Puedes estudiar el ejemplo que escribí en este hilo, aunque en este caso no tiene ventanas trasparentes pues decidí hacerlo todo con regiones. Puedes obtener mas información de las regiones aquí.
Saludos.