UNKNOWN '************************************** 'Windows API/Global Declarations for :Ma ' ke Form Transparent. '************************************** Declare Function GetWindowRect Lib "user32" (ByVal hWnd As Long, lpRECT As RECT) As Long Declare Function GetClientRect Lib "user32" (ByVal hWnd As Long, lpRECT As RECT) As Long Declare Function CombineRgn Lib "gdi32" (ByVal hDestRgn As Long, ByVal hSrcRgn1 As Long, ByVal hSrcRgn2 As Long, ByVal nCombineMode As Long) As Long Declare Function CreateRectRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long Declare Function ScreenToClient Lib "user32" (ByVal hWnd As Long, lpPoint As POINTAPI) As Long Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long Public Const RGN_AND = 1 Public Const RGN_COPY = 5 Public Const RGN_DIFF = 4 Public Const RGN_OR = 2 Public Const RGN_XOR = 3 Type POINTAPI x As Long Y As Long End Type Type RECT Left As Long Top As Long Right As Long Bottom As Long End Type '************************************** ' Name: Make Form Transparent. ' Description:Makes a Form Trans Parent ' By: Kalani COM ' ' ' Inputs:None ' ' Returns:None ' 'Assumes:None ' 'Side Effects:No Controls are Visible on ' the Form 'This code is copyrighted and has limite ' d warranties. 'Please see http://www.Planet-Source-Cod ' e.com/xq/ASP/txtCodeId.816/lngWId.1/qx/v ' b/scripts/ShowCode.htm 'for details. '************************************** Public Sub MakeTransparent(frm As Form) 'This code was takin from a AOL Visual B ' asic 'Message Board. It was submited by: SOOP ' Rcow Dim rctClient As RECT, rctFrame As RECT Dim hClient As Long, hFrame As Long '// Grab client area and frame area GetWindowRect frm.hWnd, rctFrame GetClientRect frm.hWnd, rctClient '// Convert client coordinates to screen ' coordinates Dim lpTL As POINTAPI, lpBR As POINTAPI lpTL.x = rctFrame.Left lpTL.Y = rctFrame.Top lpBR.x = rctFrame.Right lpBR.Y = rctFrame.Bottom ScreenToClient frm.hWnd, lpTL ScreenToClient frm.hWnd, lpBR rctFrame.Left = lpTL.x rctFrame.Top = lpTL.Y rctFrame.Right = lpBR.x rctFrame.Bottom = lpBR.Y rctClient.Left = Abs(rctFrame.Left) rctClient.Top = Abs(rctFrame.Top) rctClient.Right = rctClient.Right + Abs(rctFrame.Left) rctClient.Bottom = rctClient.Bottom + Abs(rctFrame.Top) rctFrame.Right = rctFrame.Right + Abs(rctFrame.Left) rctFrame.Bottom = rctFrame.Bottom + Abs(rctFrame.Top) rctFrame.Top = 0 rctFrame.Left = 0 '// Convert RECT structures to region ha ' ndles hClient = CreateRectRgn(rctClient.Left, rctClient.Top, rctClient.Right, rctClient.Bottom) hFrame = CreateRectRgn(rctFrame.Left, rctFrame.Top, rctFrame.Right, rctFrame.Bottom) '// Create the new "Transparent" region CombineRgn hFrame, hClient, hFrame, RGN_XOR '// Now lock the window's area to this c ' reated region SetWindowRgn frm.hWnd, hFrame, True End Sub