# Rebar [v2.02]

Author: majkinetor Last Modified: nonexistent

Rebar control act as container for child windows. An application assigns child windows, which are often other controls, to a rebar control band. Rebar controls contain one or more bands, and each band can have any combination of a gripper bar, a bitmap, a text label, and a child window. However, bands cannot contain more than one child window. As you dynamically reposition a rebar control band, the rebar control manages the size and position of the child window assigned to that band.

Rebar("oldNotify", RegisterCallback(old)
Rebar_Add(hGui, Style="", hIL="", Pos="", Handler="")
Rebar_add2Form(hParent, Txt, Opt)
Rebar_compileBand(ByRef BAND, hCtrl, ByRef o1="", ByRef o2="", ByRef o3="", ByRef o4="", ByRef o5="", ByRef o6="", ByRef o7="", ByRef o8="", ByRef o9="")
Rebar_Count(hRebar)
Rebar_DeleteBand(hRebar, WhichBand)
Rebar_GetBand(hRebar, WhichBand, pQ="", ByRef o1="", ByRef o2="", ByRef o3="", ByRef o4="", ByRef o5="", ByRef o6="", ByRef o7="")
Rebar_getColor(pColor, pAHK = false)
Rebar_GetLayout(hRebar)
Rebar_GetRect(hRebar, WhichBand="", pQ="", ByRef o1="", ByRef o2="", ByRef o3="", ByRef o4="")
Rebar_getStyle( pStyle, pHex = false, ByRef hNegStyle="")
Rebar_Height(hRebar)
Rebar_ID2Index(hRebar, Id)
ReBar_Insert(hRebar, hEdit, "mw 100", "L 400", "T Log ")
Rebar_Lock(hRebar, Lock="")
Rebar_malloc(pSize)
Rebar_mfree(pAdr)
Rebar_MoveBand(hRebar, From, To=1)
Rebar_onNotify(Wparam, Lparam, Msg, Hwnd)
Rebar_SetBand(hRebar, WhichBand, o1="", o2="", o3="", o4="", o5="", o6="", o7="", o8="", o9="")
Rebar_SetBandState(hRebar, WhichBand, State)
Rebar_SetBandStyle(hRebar, A_Index, Lock "nogripper")
Rebar_SetBandWidth(hRebar, WhichBand, Width)
Rebar_SetLayout(hRebar, Layout)
Rebar_ShowBand(hRebar, 1)
Rebar_SizeToRect(hRebar, ByRef RECT="~`a ")

For more details of the functions's parameters and return value, please see it's source code.

#### Remarks

This module is part of the Forms Framework package.
MSDN Reference: http://msdn.microsoft.com/en-us/library/bb774375(VS.85).aspx.

For update's details and remarks related to the functions, please see the AutoHotkey Forum: http://www.autohotkey.com/forum/viewtopic.php?t=53317

#### License

The functions is an open source item under the GNU GPL license. For details, please see gpl-2.0.txt

#### Example

    ; #Include Rebar.ahk
    #NoEnv
    SendMode Input
    SetWorkingDir %A_ScriptDir%

        Gui, +LastFound +Resize
        hGui := WinExist()
        Gui, Show, w400 h140 hide           ;set window size, mandatory

      ;create edit
        Gui, Add, Edit, HWNDhEdit w100 h100

      ;create combo
        Gui, Add, ComboBox, HWNDhCombo w80, item 1 |item 2|item 3

      ;create rebar
        hRebar := Rebar_Add(hGui)
        ReBar_Insert(hRebar, hEdit, "mw 100", "L 400", "T Log ")    ;Insert edit band, set lenght of the band to 400
                                                                    ; minimum width of edit to 100, set text to "Log "
        ReBar_Insert(hRebar, hCombo, "L 300", "P 1")                ;Insert combo band at the top, set length of the band to 300

        Gui, Show
    Return

    GuiClose:
    ExitApp