home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 3_2004-2005.ISO / Data / Zips / Banks_Tran1792759122004.psc / API_Functions.bas < prev    next >
BASIC Source File  |  2003-12-24  |  2KB  |  61 lines

  1. Attribute VB_Name = "API_Functions"
  2. Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal HWND As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Long) As Long
  3.  
  4. Private Declare Function CreateRoundRectRgn Lib "gdi32" _
  5.     (ByVal RectX1 As Long, ByVal RectY1 As Long, ByVal RectX2 As Long, _
  6.     ByVal RectY2 As Long, ByVal EllipseWidth As Long, _
  7.     ByVal EllipseHeight As Long) As Long
  8. Private Declare Function SetWindowRgn Lib "user32" (ByVal HWND As Long, _
  9. ByVal hRgn As Long, ByVal bRedraw As Long) As Long
  10.  
  11. Public Declare Sub ReleaseCapture Lib "user32" ()
  12. Public Const WM_NCLBUTTONDOWN = &HA1
  13. Public Const HTCAPTION = 2
  14.  
  15. Private Declare Function SetWindowPos Lib "user32" (ByVal HWND As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
  16.  
  17. Private Const HWND_TOPMOST = -1
  18. Private Const HWND_NOTOPMOST = -2
  19. Private Const SWP_NOSIZE = &H1
  20. Private Const SWP_NOMOVE = &H2
  21. Private Const TOPMOST_FLAGS = SWP_NOMOVE Or SWP_NOSIZE
  22.  
  23.  
  24.  
  25. Public Sub Make_On_Top(ByVal HWND As Long, Optional OnTop As Boolean = True)
  26.     
  27. On Error GoTo Err_Handler
  28.     
  29.     Dim r As Long
  30.     
  31.     If OnTop = True Then
  32.         r = SetWindowPos(HWND, HWND_TOPMOST, _
  33.             0&, 0&, 0&, 0&, TOPMOST_FLAGS)
  34.     Else
  35.         r = SetWindowPos(HWND, HWND_NOTOPMOST, _
  36.             0&, 0&, 0&, 0&, TOPMOST_FLAGS)
  37.     End If
  38.  
  39. Exit_Sub:
  40.     Exit Sub
  41.  
  42. Err_Handler:
  43.     Resume Exit_Sub
  44.  
  45. End Sub
  46.  
  47.  
  48. Public Sub Round_Corners(ByRef FRM As Form)
  49.     FRM.ScaleMode = vbPixels
  50.     mlWidth = FRM.ScaleWidth
  51.     mlHeight = FRM.ScaleHeight
  52.     
  53.     
  54.     SetWindowRgn FRM.HWND, CreateRoundRectRgn(1, 1, _
  55.                 (FRM.Width / Screen.TwipsPerPixelX), (FRM.Height / Screen.TwipsPerPixelY), _
  56.                 15, 15), _
  57.                 True
  58.     FRM.ScaleMode = vbTwips
  59. End Sub
  60.  
  61.