dcsimg
September 25, 2020
Hot Topics:

Create a Progress Bar using the API

  • By Sam Huggill
  • Send Email »
  • More Articles »

Add a new module (modProgBar) and copy the following code into it:

Option Explicit 
 
'// Windows API Declares  
Public Declare Function CreateWindowEX Lib_
    "user32" _ 
    Alias "CreateWindowExA"_
    (ByVal dwExStyle As Long, _ 
    ByVal lpClassName As String, _ 
    ByVal lpWindowName As String, _ 
    ByVal dwStyle As Long, _ 
    ByVal x As Long, _ 
    ByVal y As Long, _ 
    ByVal nWidth As Long, _ 
    ByVal nHeight As Long, _ 
    ByVal hWndParent As Long, _ 
    ByVal hMenu As Long, _ 
    ByVal hInstance As Long, lpParam As Any)_
    As Long 
     
Public Declare Function DestroyWindow Lib_
    "user32" _ 
    (ByVal hwnd As Long) As Long 
Public Declare Function MoveWindow Lib "_
    user32" _ 
    (ByVal hwnd As Long, ByVal x As Long, _ 
    ByVal y As Long, ByVal nWidth As Long, _ 
    ByVal nHeight As Long, ByVal bRepaint As Long)_
    As Long 
     
Public Declare Function SetParent Lib_
    "user32" _ 
    (ByVal hWndChild As Long, _ 
    ByVal hWndNewParent As Long) As Long 
     
Public Declare Function SendMessage Lib_
    "user32" _ 
    Alias "SendMessageA"_
    (ByVal hwnd As Long, _ 
    ByVal wMsg As Long, ByVal wParam_
    As Long, lParam As Any) As Long 
 
 '// Progess bar class name  
Public Const PROGRESS_CLASS =_
   "msctls_progress32" 
 '// Windows Messages and styles  
Public Const WM_USER = &H400 
Public Const WS_VISIBLE = &H10000000 
Public Const WS_CHILD = &H40000000 
 
 '// Progress bar styles and messages  
Public Const PBS_SMOOTH = &H1 
Public Const PBS_VERTICAL = &H4 
Public Const PBM_SETRANGE = (WM_USER + 1) 
Public Const PBM_SETPOS = (WM_USER + 2) 
Public Const PBM_DELTAPOS = (WM_USER + 3) 
Public Const PBM_SETSTEP = (WM_USER + 4) 
Public Const PBM_STEPIT = (WM_USER + 5) 
Public Const PBM_SETRANGE32 = (WM_USER + 6) 
Public Const PBM_GETRANGE = (WM_USER + 7) 
Public Const PBM_GETPOS = (WM_USER + 8) 
Public Const PBM_SETBARCOLOR = (WM_USER + 9) 
 '// Common Controls messages  
Public Const CCM_FIRST = &H2000 
Public Const CCM_SETBKCOLOR = (CCM_FIRST + 1) 
Public Const SB_SETBKCOLOR = CCM_SETBKCOLOR




Page 2 of 3



This article was originally published on November 20, 2002

Enterprise Development Update

Don't miss an article. Subscribe to our newsletter below.


Thanks for your registration, follow us on our social networks to keep up-to-date