Apresento aqui para voces, um recurso
interessante que desenvolvi. Ele remove o fundo do form e deixa os objetos
flutuando no seu espaço.
Trabalho baseado e inspirado na
técnica do colega Craig
Boyd.: http://www.sweetpotatosoftware.com/SPSBlog/PermaLink,guid,9a91dea3-6413-42e9-aeff-f0097937474d.aspx
Mais abaixo segue o download deste exemplo, mas tentarei explicar-lhes como
fiz.
Percebam abaixo o fundo do form na cor rosa (rgb(255,128,255))
e objetos no espaço do form sobrepondo estas áreas pintadas:
Agora, abaixo vejam a execução
do form acima:
Como fiz isso? Bem, utilizando GDI32.dll
Declarações
das DLLs e suas funções:
DECLARE
LONG CreateRectRgn IN
"gdi32" LONG
X1, LONG
Y1, LONG
X2, LONG
Y2
DECLARE
LONG CombineRgn IN
"gdi32" LONG
hDestRgn,
LONG hSrcRgn1,
LONG hSrcRgn2,
LONG nCombineMode
DECLARE
LONG DeleteObject IN
"gdi32" LONG
hObject
DECLARE
LONG SetWindowRgn IN
"user32" LONG
HWND, LONG
hRgn,
Integer bRedraw
Depois, se faz uma
verificação
de ponto-a-ponto do form, verificando se o presente ponto é da cor a
ser substituido pelo transparente, no caso: rosa (rgb(255,128,255))
.
Baixem
aqui o exemplo e vão ver o quanto é simples... (Só 5kb)
Um abraço.