www.pudn.com > bambam004_source.rar > toolbar.asm


; ######################################################################## 
 
    Do_ToolBar  PROTO :DWORD 
    SetBmpColor PROTO :DWORD 
 
    include tbmacros.asm 
 
    .data 
        hTbBmp        dd 0 
        hToolBar      dd 0 
 
    .code 
 
; ######################################################################## 
 
Do_ToolBar proc hWin :DWORD 
 
    ; --------------------------------------- 
    ; This proc works by using macros so that  
    ; the code is easier to read and modify 
    ; --------------------------------------- 
 
    LOCAL bSize :DWORD 
    LOCAL tbab  :TBADDBITMAP 
    LOCAL tbb   :TBBUTTON 
 
    ; ------------------ 
    ; The toolbar bitmap 
    ; ~~~~~~~~~~~~~~~~~~ 
    ; You must supply a bitmap for the toolbar that has the  
    ; correct number of the required images, each of the same 
    ; size and in the following strip bitmap form. 
     
    ;  ------------------------------------- 
    ;  |  1  |  2  |  3  |  4  |  5  |  6  | 
    ;  ------------------------------------- 
 
    ; ------------------------ 
    ; Uncomment following when 
    ; bitmap has been created 
    ; ------------------------ 
    invoke LoadBitmap,hInstance,750 
    mov hTbBmp,eax 
 
    ; -------------------------------------------------- 
    ; Set toolbar button dimensions here, width & height 
    ; -------------------------------------------------- 
    Create_Tool_Bar 75, 75 
 
    TBextraData     ; additional data for TBBUTTON structure 
 
    ; ----------------------------------- 
    ; Add toolbar buttons and spaces here 
    ; Syntax for the macro TBbutton is 
    ; TBbutton bmpID number, WM_COMMAND ID number 
    ; WM_COMMAND ID numbers start at 50 
    ; ----------------------------------- 
    TBbutton  0,  50 
    TBbutton  1,  51 
    TBbutton  2,  52 
    TBbutton  3,  53 
 
    ret 
 
Do_ToolBar endp 
 
; ######################################################################## 
 
SetBmpColor proc hBitmap:DWORD 
 
    LOCAL mDC       :DWORD 
    LOCAL hBrush    :DWORD 
    LOCAL hOldBmp   :DWORD 
    LOCAL hReturn   :DWORD 
    LOCAL hOldBrush :DWORD 
 
      invoke CreateCompatibleDC,NULL 
      mov mDC,eax 
 
      invoke SelectObject,mDC,hBitmap 
      mov hOldBmp,eax 
 
      invoke GetSysColor,COLOR_BTNFACE 
      invoke CreateSolidBrush,eax 
      mov hBrush,eax 
 
      invoke SelectObject,mDC,hBrush 
      mov hOldBrush,eax 
 
      invoke GetPixel,mDC,1,1 
      invoke ExtFloodFill,mDC,1,1,eax,FLOODFILLSURFACE 
 
      invoke SelectObject,mDC,hOldBrush 
      invoke DeleteObject,hBrush 
 
      invoke SelectObject,mDC,hBitmap 
      mov hReturn,eax 
      invoke DeleteDC,mDC 
 
      mov eax,hReturn 
 
    ret 
 
SetBmpColor endp 
 
; #########################################################################