Announcement

Collapse
No announcement yet.

Edit box + Rebar control Help needed

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Dan G Hoffman
    replied
    That works thanks. I will have to resize it but I can change that part.

    Leave a comment:


  • Dave Biggs
    replied
    This seems to work a little better...
    Code:
         Control Add "ToolbarWindow32", hDlg, %IDC_TOOLBAR, "Toolbar", 0, 0, 0, 0, _
          %WS_CHILD OR %WS_VISIBLE OR %TBSTYLE_TOOLTIPS _
          OR %WS_CLIPCHILDREN OR %WS_CLIPSIBLINGS OR %CCS_NODIVIDER OR %CCS_NORESIZE

    Leave a comment:


  • Michael Mattias
    replied
    All I can see on compiled version is two textless buttons which do nothing when clicked.

    I checked my (working) rebar code, and I created all the 'hwnd child' controls which go in the band as children of the rebar control, not children of the conaining screen...
    Code:
    FUNCTION CreateFindScreenBox(BYVAL hParent AS DWORD) AS DWORD
        LOCAL hComboBox             AS DWORD
        CONTROL ADD TEXTBOX, hParent, %IDC_LOCSCREEN, "textboxtext", 10, 271, 70, 15
        CONTROL HANDLE hParent, %IDC_LOCSCREEN TO hComboBox
        FUNCTION = hComboBox
    END FUNCTION
    This makes that textbox a child of 'hparent', not a child of 'hrebar' which is what I think it needs to be... and I'm not even sure DDT supports creation of controls which are children of other controls. I gave it a try passing hRebar as the parent for both the band controls and got back handles, but I still have no visual anything.

    I am out of good ideas here. Send me the compiled version with all the BMPS and stuff. No images I know does weird things to toolbars and buttons.

    (I am NOT a 'DDT' guy).

    MCM

    Leave a comment:


  • Dan G Hoffman
    replied
    Here is a test exe you can compile. Click on the top right area and all of a suddent you will atleast see part of the edit box.

    Thanks
    Code:
    #PBFORMS CREATED V1.51
    #COMPILE EXE
    #DIM ALL
    #PBFORMS BEGIN INCLUDES 
    #IF NOT %DEF(%WINAPI)
        #INCLUDE "WIN32API.INC"
    #ENDIF
    #PBFORMS END INCLUDES
    #Include "COMMCTRL.INC"
    %IDC_LOCSCREEN = 1001
    %ID_CLONE      = 1002
    %ID_BACKDATE   = 1003
    %ID_REBAR      = 1004
    %IDC_TOOLBAR   = 1005
    %IDC_BLANKLABEL= 1006
    %ToolButtons   = 3
    Global hRebar As Dword
    Global hToolBar As Dword
    #PBForms Begin Constants 
    %IDD_MAIN = 101
    #PBFORMS END CONSTANTS
    DECLARE CALLBACK FUNCTION ShowMAINProc()
    DECLARE FUNCTION ShowMAIN(BYVAL hParent AS DWORD) AS LONG
    #PBFORMS DECLARATIONS
    FUNCTION PBMAIN()
        ShowMAIN %HWND_DESKTOP
    END FUNCTION
    CALLBACK FUNCTION ShowMAINProc()
        SELECT CASE AS LONG CBMSG
            CASE %WM_INITDIALOG
            CASE %WM_NCACTIVATE
                STATIC hWndSaveFocus AS DWORD
                IF ISFALSE CBWPARAM THEN
                    hWndSaveFocus = GetFocus()
                ELSEIF hWndSaveFocus THEN
                    SetFocus(hWndSaveFocus)
                    hWndSaveFocus = 0
                END IF
            CASE %WM_COMMAND
                SELECT CASE AS LONG CBCTL
                END SELECT
        END SELECT
    END FUNCTION
    Function CreateFindScreenBox(ByVal hParent As Dword) As Dword
        Local hComboBox             As Dword
        Control Add TextBox, hParent, %IDC_LOCSCREEN, "", 10, 271, 70, 15
        Control Handle hParent, %IDC_LOCSCREEN To hComboBox
        Function = hComboBox
    End Function
        
    Function CreateRebar (ByVal hParent As Dword) As Long
      Local rbi                 As REBARINFO            
      Local rbBand              As REBARBANDINFO        
      Local rc                  As Rect                 
      Local hCbPackageBox       As Dword                
      Local hCbPackageTYPEBox   As Dword
      Local hCbFileTYPEBox      As Dword     
      Local hCbDataPathBox      As Dword
      Local hCbBrowseButtonBox  As Dword                           
      
      Local hLabelBox           As Dword                
      Local hCBYearBox          As Dword                
      Local hCBScreenBox        As Dword
      Local szCbText            As Asciiz * 255  
      Local szCbPText           As Asciiz * 255  
      Local hTbSBar             As Dword                
      Local hETbBar             As Dword                
      Local hTbBar              As Dword                
      Local hPTbBar             As Dword                
      Local szTbText            As Asciiz * 255  
      Local dwBtnSize           As Dword 
      Local hCbFindScreenBox    As Dword               
    
       Local hCbBUTTON As Dword
       Control Add $REBARCLASSNAME, hParent, %ID_REBAR, "", 0, 0, 0, 0, _
           %WS_CHILD Or %WS_VISIBLE Or %WS_CLIPSIBLINGS Or %WS_CLIPCHILDREN Or _
            %RBS_VARHEIGHT Or %RBS_BANDBORDERS Or %WS_BORDER 'Or %CCS_NODIVIDER
       Control Handle hParent, %ID_REBAR To hRebar
       ' Initialize and send the REBARINFO structure
       rbi.cbSize = SizeOf(rbi)
       rbi.fMask = 0
       rbi.himl = 0
       Control Send hParent, %ID_REBAR, %RB_SETBARINFO, 0, VarPtr(rbi)
       '// Initialize REBARBANDINFO for all rebar bands
       rbBand.cbSize     = SizeOf(rbBand)
       rbBand.fMask      = %RBBIM_COLORS    Or _    '// clrFore and clrBack are valid
                           %RBBIM_CHILD     Or _    '// hwndChild is valid
                           %RBBIM_CHILDSIZE Or _    '// cxMinChild and cyMinChild are valid
                           %RBBIM_STYLE     Or _    '// fStyle is valid
                           %RBBIM_ID        Or _    '// wID is valid
                           %RBBIM_SIZE      Or _    '// cx is valid
                           %RBBIM_TEXT      Or _    '// lpText is valid
                           %RBBIM_IDEALSIZE Or _
                           %RBBIM_BACKGROUND        '// hbmBack is valid
        rbBand.clrFore    = RGB(0,0,0)              '// Black
        rbBand.clrBack    = RGB(236,233,216)        '// Grey
        rbBand.fStyle     = %RBBS_NOVERT    Or _    '// do not display in vertical orientation
                            %RBBS_CHILDEDGE Or _
                            %RBBS_NOGRIPPER Or _
                            %RBBS_FIXEDBMP 
       rbBand.hbmBack    = 0
       hTbBar            = CreateMainToolBar(hParent)
       dwBtnSize         = SendMessage(hTbBar, %TB_GETBUTTONSIZE, 0, 0)
       rbBand.hwndChild  = hTbBar
       rbBand.wID        = %IDC_TOOLBAR
       rbBand.cxMinChild = 230
       rbBand.cyMinChild = HiWrd(dwBtnSize)
       rbBand.cx         = 250
       '// Insert band into rebar
       Control Send hParent, %ID_REBAR, %RB_INSERTBAND, -1, VarPtr(rbBand)
       'insert find screen edit box
       hCbFindScreenBox  = CreateFindScreenBox(hParent)
       szCbText          = "Find Screen"
       rbBand.lpText     = VarPtr(szCbText)
       rbBand.hwndChild  = hCbFindScreenBox
       rbBand.wID        = %IDC_LOCSCREEN
       GetWindowRect hCbFindScreenBox, rc
       rbBand.cxMinChild = 85
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 85
       rbBand.fStyle     = %RBBS_NOVERT    Or _ '// do not display in vertical orientation
                           %RBBS_CHILDEDGE Or _
                           %RBBS_NOGRIPPER  Or _
                           %RBBS_FIXEDBMP 
       '// Insert band into rebar
       Control Send hParent, %ID_REBAR, %RB_INSERTBAND, -1, VarPtr(rbBand)
    
    End Function
    Function CreateMainToolbar(ByVal hDlg As Dword) As Long
        Local lStyle As Long
        Local x     As Long
        Local hBmp  As Long
        Local hInst  As Long
        Local a$
        Local Tbb() As TBBUTTON
        Local Tabm  As TBADDBITMAP
        Dim Tbb(0 To %ToolButtons - 1) As Local TBBUTTON
    
        Control Add "ToolbarWindow32", hDlg, %IDC_TOOLBAR, "Toolbar", 0, 0, 0, _
            0, %WS_CHILD Or %WS_VISIBLE Or %WS_BORDER, %WS_EX_LEFT Or _
            %WS_EX_LTRREADING Or %WS_EX_RIGHTSCROLLBAR
        Control Handle hDlg, %IDC_TOOLBAR To hToolBar
        lStyle=SendMessage(hToolbar, %TB_GETEXTENDEDSTYLE, 0, 0)
        SendMessage hToolbar, %TB_SETEXTENDEDSTYLE, 0, lStyle Or %TBSTYLE_EX_DRAWDDARROWS
    
        ' Init Tbb array.
        For x = 0 To %ToolButtons -1
            ' Set the initial states for each button
            Tbb(x).iBitmap = 0
            Tbb(x).idCommand = 0
            Tbb(x).fsState = %TBSTATE_ENABLED
            Tbb(x).fsStyle = %TBSTYLE_BUTTON
            Tbb(x).dwData = 0
            Tbb(x).iString = 0
            Select Case As Const x
                Case 0
                    ' Gap creation buttons.
                    Tbb(x).fsStyle = %TBSTYLE_SEP
                Case 1
                    Tbb(x).idCommand = %ID_CLONE
                    Tbb(x).iString = 0
                Case 2
                    Tbb(x).idCommand = %ID_BACKDATE
                    Tbb(x).iString = 1
            End Select
        Next x
        ' Set the imge list for the TB
        hInst = GetWindowLong(hDlg, %GWL_HINSTANCE)
        Control Send hDlg, %IDC_TOOLBAR, %TB_SETBITMAPSIZE, 0, MakLng(16, 16)
        'hBmp = LoadImage(hInst, ByVal %IDR_IMGFILE2, %IMAGE_BITMAP, 0, 0, %LR_LOADTRANSPARENT Or  %LR_LOADMAP3DCOLORS)
        'Tabm.nID = hBmp
        'Tabm.hInst = 0'GetModuleHandle(BYVAL %NULL)
        'Control Send hDlg, %IDC_TOOLBAR, %TB_ADDBITMAP, %ToolButtons, VarPtr(Tabm)
    
        ' Set the buttons
        Control Send hDlg, %IDC_TOOLBAR, %TB_BUTTONSTRUCTSIZE, SizeOf(Tbb(0)), 0
        Control Send hDlg, %IDC_TOOLBAR, %TB_ADDBUTTONS, %ToolButtons, VarPtr(Tbb(0))
        Function=htoolbar
    End Function
    
    Function ShowMAIN(ByVal hParent As Dword) As Long
        LOCAL lRslt AS LONG
    #PBFORMS BEGIN DIALOG %IDD_MAIN->->
        LOCAL hDlg  AS DWORD
        Dialog New hParent, "Test Rebar Problem", 70, 70, 501, 121, %WS_POPUP Or _
            %WS_BORDER OR %WS_DLGFRAME OR %WS_SYSMENU OR %WS_CLIPSIBLINGS OR _
            %WS_VISIBLE OR %DS_MODALFRAME OR %DS_3DLOOK OR %DS_NOFAILCREATE OR _
            %DS_SETFONT, %WS_EX_CONTROLPARENT OR %WS_EX_LEFT OR _
            %WS_EX_LTRREADING OR %WS_EX_RIGHTSCROLLBAR, TO hDlg
    #PBFORMS END DIALOG
        CreateRebar hDlg
        
        DIALOG SHOW MODAL hDlg, CALL ShowMAINProc TO lRslt
    #PBFORMS BEGIN CLEANUP %IDD_MAIN
    #PBFORMS END CLEANUP
        FUNCTION = lRslt
    END FUNCTION

    Leave a comment:


  • Dan G Hoffman
    replied
    By breaks I meant using the style %RBBS_BREAK to force the rebar information to the next line. I will try to make a small exe to help with debugging.

    Thanks

    Leave a comment:


  • Michael Mattias
    replied
    >The rebar is broken into 3 breaks.

    Three? I count twelve (12) RB_INSERTBAND commands.

    Can't compile and run so that's about all I notice.

    Are you getting back non-zero hWnd from all those 'create' functions? Maybe the create is failing. But if you can see it "sometimes" that's not likely.

    Leave a comment:


  • Dan G Hoffman
    started a topic Edit box + Rebar control Help needed

    Edit box + Rebar control Help needed

    Hello all,

    I have rebar control that houses my toolbar and various dropdown boxes. The rebar is broken into 3 breaks. My issue is on the first break in which the toolbar is placed. I am trying to insert a edit control on there but the program will not draw it. If I click around it will become visiable for a second but with no label text. I am lost can anyone assist?

    Here is my rebar function. I can post more as needed but I suspect the issue is here. The problem area is for the rebar insert for CreateFindScreenBox
    Code:
    Function CreateRebar (ByVal hParent As Dword) As Long
    
      Local rbi                 As REBARINFO            
      Local rbBand              As REBARBANDINFO        
      Local rc                  As Rect                 
      Local hCbPackageBox       As Dword                
      Local hCbPackageTYPEBox   As Dword
      Local hCbFileTYPEBox      As Dword     
      Local hCbDataPathBox      As Dword
      Local hCbBrowseButtonBox  As Dword                           
      
      Local hLabelBox           As Dword                
      Local hCBYearBox          As Dword                
      Local hCBScreenBox        As Dword
      Local szCbText            As Asciiz * 255  
      Local szCbPText           As Asciiz * 255  
      Local hTbSBar             As Dword                
      Local hETbBar             As Dword                
    
      Local hTbBar              As Dword                
      Local hPTbBar             As Dword                
      Local szTbText            As Asciiz * 255  
      Local dwBtnSize           As Dword 
      Local hCbFindScreenBox    As Dword               
    
    
       LOCAL hCbBUTTON AS DWORD
    
       CONTROL ADD $REBARCLASSNAME, hParent, %ID_REBAR, "", 0, 0, 0, 0, _
           %WS_CHILD OR %WS_VISIBLE OR %WS_CLIPSIBLINGS OR %WS_CLIPCHILDREN OR _
            %RBS_VARHEIGHT OR %RBS_BANDBORDERS OR %WS_BORDER 'Or %CCS_NODIVIDER
    
       CONTROL HANDLE hParent, %ID_REBAR TO hRebar
    
       ' Initialize and send the REBARINFO structure
       rbi.cbSize = SIZEOF(rbi)
       rbi.fMask = 0
       rbi.himl = 0
       CONTROL SEND hParent, %ID_REBAR, %RB_SETBARINFO, 0, VARPTR(rbi)
    
       '// Initialize REBARBANDINFO for all rebar bands
       rbBand.cbSize     = SIZEOF(rbBand)
       rbBand.fMask      = %RBBIM_COLORS    OR _    '// clrFore and clrBack are valid
                           %RBBIM_CHILD     OR _    '// hwndChild is valid
                           %RBBIM_CHILDSIZE OR _    '// cxMinChild and cyMinChild are valid
                           %RBBIM_STYLE     OR _    '// fStyle is valid
                           %RBBIM_ID        OR _    '// wID is valid
                           %RBBIM_SIZE      OR _    '// cx is valid
                           %RBBIM_TEXT      OR _    '// lpText is valid
                           %RBBIM_IDEALSIZE OR _
                           %RBBIM_BACKGROUND        '// hbmBack is valid
        rbBand.clrFore    = RGB(0,0,0)              '// Black
        rbBand.clrBack    = RGB(236,233,216)        '// Grey
        rbBand.fStyle     = %RBBS_NOVERT    Or _    '// do not display in vertical orientation
                            %RBBS_CHILDEDGE Or _
                            %RBBS_NOGRIPPER Or _
                            %RBBS_FIXEDBMP 
       rbBand.hbmBack    = 0
       hTbBar            = CreateMainToolBar(hParent)
       dwBtnSize         = SendMessage(hTbBar, %TB_GETBUTTONSIZE, 0, 0)
       rbBand.hwndChild  = hTbBar
       rbBand.wID        = %IDC_TOOLBAR
       rbBand.cxMinChild = 230
       rbBand.cyMinChild = HiWrd(dwBtnSize)
       rbBand.cx         = 250
       '// Insert band into rebar
       CONTROL SEND hParent, %ID_REBAR, %RB_INSERTBAND, -1, VARPTR(rbBand)
    
      [COLOR="Red"][B] 'insert find screen edit box
       hCbFindScreenBox  = CreateFindScreenBox(hParent)
       szCbText          = "Find Screen"
       rbBand.lpText     = VarPtr(szCbText)
       rbBand.hwndChild  = hCbFindScreenBox
       rbBand.wID        = %IDC_LOCSCREEN
       GetWindowRect hCbFindScreenBox, rc
       rbBand.cxMinChild = 85
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 85
       rbBand.fStyle     = %RBBS_NOVERT    Or _ '// do not display in vertical orientation
                           %RBBS_CHILDEDGE Or _
                           %RBBS_NOGRIPPER  Or _
                           %RBBS_FIXEDBMP 
       '// Insert band into rebar
       Control Send hParent, %ID_REBAR, %RB_INSERTBAND, -1, VarPtr(rbBand)[/B][/COLOR]   'create blank label so the program doesnt make the last control in the rebar huge
       hLabelBox         = CreateBlankLabel(hParent)
       szCbPText         = ""
       rbBand.lpText     = VarPtr(szCbPText)
       rbBand.hwndChild  = hLabelBox
       rbBand.wID        = %IDC_BLANKLABEL
       GetWindowRect hLabelBox, rc
       rbBand.cxMinChild = 400
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 400
       Control Send hParent, %ID_REBAR, %RB_INSERTBAND, -1, VarPtr(rbBand)
    
        '// insert Tax year drop down
       hCbYearBox        = CreateTaxYearComboBox(hParent)
       szCbText          = "Tax Year"
       rbBand.lpText     = VARPTR(szCbText)
       rbBand.hwndChild  = hCbYearBox
       rbBand.wID        = %IDC_CMBYEAR
       GETWINDOWRECT hCbYearBox, rc
       rbBand.cxMinChild = 50
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 50
       rbBand.fStyle     = %RBBS_NOVERT    Or _ '// do not display in vertical orientation
                           %RBBS_CHILDEDGE Or _
                           %RBBS_NOGRIPPER Or _
                           %RBBS_FIXEDBMP Or _
                           %RBBS_BREAK
       '// Insert band into rebar
       CONTROL SEND hParent, %ID_REBAR, %RB_INSERTBAND, -1, VARPTR(rbBand)
    
        'insert Package drop down
       hCbPackageBox     = CreatePackageComboBox(hParent)
       szCbText          = "Package"
       rbBand.lpText     = VARPTR(szCbText)
       rbBand.hwndChild  = hCbPackageBox
       rbBand.wID        = %IDC_FEDSTLIST
       GETWINDOWRECT hCbPackageBox, rc
       rbBand.cxMinChild = 85
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 85
       rbBand.fStyle     = %RBBS_NOVERT    Or _ '// do not display in vertical orientation
                           %RBBS_CHILDEDGE Or _
                           %RBBS_NOGRIPPER Or _
                           %RBBS_FIXEDBMP
       '// Insert band into rebar
       CONTROL SEND hParent, %ID_REBAR, %RB_INSERTBAND, -1, VARPTR(rbBand)
    
        'insert Package Type drop down
       hCbPackageTypeBox = CreatePackageTypeComboBox(hParent)
       szCbText          = "Type"
       rbBand.lpText     = VARPTR(szCbText)
       rbBand.hwndChild  = hCbPackageTypeBox
       rbBand.wID        = %IDC_PACKAGE
       GETWINDOWRECT hCbPackageTypeBox, rc
       rbBand.cxMinChild = 50
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 50
       '// Insert band into rebar
       CONTROL SEND hParent, %ID_REBAR, %RB_INSERTBAND, -1, VARPTR(rbBand)
    
      'insert screen list dropdown
       hCbScreenBox      = CreateScreenComboBox(hParent)
       szCbText          = "Screen"
       rbBand.lpText     = VarPtr(szCbText)
       rbBand.hwndChild  = hCbScreenBox
       rbBand.wID        =  %IDC_SCREEN
       GetWindowRect hCbScreenBox, rc
       rbBand.cxMinChild = 150
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 150
       rbBand.fStyle     = %RBBS_NOVERT    Or _ '// do not display in vertical orientation
                           %RBBS_CHILDEDGE Or _
                           %RBBS_NOGRIPPER Or _
                           %RBBS_FIXEDBMP 
       '// Insert band into rebar
       Control Send hParent, %ID_REBAR, %RB_INSERTBAND, -1, VarPtr(rbBand)
    
       '// create blank label so the program doesnt make the last control in the rebar huge
       hLabelBox         = CreateBlankLabel(hParent)
       szCbPText         = ""
       rbBand.lpText     = VarPtr(szCbPText)
       rbBand.hwndChild  = hLabelBox
       rbBand.wID        = %IDC_BLANKLABEL
       GetWindowRect hLabelBox, rc
       rbBand.cxMinChild = 400
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 400
      Control Send hParent, %ID_REBAR, %RB_INSERTBAND, -1, VarPtr(rbBand)
    
       '// insert File Type drop down
       hCbFileTypeBox    = CreateFileTypeComboBox(hParent)
       szCbText          = "File Type"
       rbBand.lpText     = VarPtr(szCbText)
       rbBand.hwndChild  = hCbFileTypeBox
       rbBand.wID        = %IDC_CMBDATATYPE
       GetWindowRect hCbFileTypeBox, rc
       rbBand.cxMinChild = 50
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 50
       rbBand.fStyle     = %RBBS_NOVERT    Or _ '// do not display in vertical orientation
                           %RBBS_CHILDEDGE Or _
                           %RBBS_NOGRIPPER Or _
                           %RBBS_FIXEDBMP  Or _
                           %RBBS_BREAK
       '// Insert band into rebar
       Control Send hParent, %ID_REBAR, %RB_INSERTBAND, -1, VarPtr(rbBand)  
    
       '// insert Data Path drop down
       hCbDataPathBox    = CreateDataPathComboBox(hParent)
       szCbText          = "Search Path"
       rbBand.lpText     = VarPtr(szCbText)
       rbBand.hwndChild  = hCbDataPathBox
       rbBand.wID        = %IDC_DATAPATH
       GetWindowRect hCbDataPathBox, rc
       rbBand.cxMinChild = 264
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 264
       rbBand.fStyle     = %RBBS_NOVERT    Or _ '// do not display in vertical orientation
                           %RBBS_CHILDEDGE Or _
                           %RBBS_NOGRIPPER Or _
                           %RBBS_FIXEDBMP 
       '// Insert band into rebar
       Control Send hParent, %ID_REBAR, %RB_INSERTBAND, -1, VarPtr(rbBand)
    
      '// insert Browse Button
       hCbBrowseButtonBox= CreateBrowseButtonBox(hParent)
       szCbText          = ""
       rbBand.lpText     = VarPtr(szCbText)
       rbBand.hwndChild  = hCbBrowseButtonBox
       rbBand.wID        = %IDC_BROWSE
       GetWindowRect hCbBrowseButtonBox, rc
       rbBand.cxMinChild = 85
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 85
       '// Insert band into rebar
       Control Send hParent, %ID_REBAR, %RB_INSERTBAND, -1, VarPtr(rbBand)
    
       '// insert blank label 
       hLabelBox         = CreateBlankLabel(hParent)
       szCbPText         = ""
       rbBand.lpText     = VarPtr(szCbPText)
       rbBand.hwndChild  = hLabelBox
       rbBand.wID        = %IDC_BLANKLABEL
       GetWindowRect hLabelBox, rc
       rbBand.cxMinChild = 400
       rbBand.cyMinChild = rc.nBottom - rc.nTop
       rbBand.cx         = 400
       Control Send hParent, %ID_REBAR, %RB_INSERTBAND, -1, VarPtr(rbBand)
    
    END FUNCTION
Working...
X