函数参考


_GUICtrlRebar_GetBandRectEx

检索伸缩条控件特定带区的边界矩形,返回数据结构.

#Include <GuiRebar.au3>
_GUICtrlRebar_GetBandRectEx($hWnd, $iIndex)

参数

$hWnd 伸缩条控件句柄
$iIndex 带区的 0 基索引

返回值

返回 $tagRECT 结构

注意/说明

None.

相关

_GUICtrlRebar_GetBandRect, _GUICtrlRebar_GetBandBorders, _GUICtrlRebar_GetBandBordersEx

示例/演示


#include <GUIConstantsEx.au3>
#include <GuiReBar.au3>
#include <GuiToolbar.au3>
#include <WindowsConstants.au3>
#include <Constants.au3>

$Debug_RB = False

Global $iMemo

_Main()

Func _Main()
    Local $hgui, $btnExit, $hReBar, $hToolbar, $hInput, $tBorders
    Local Enum $idNew = 1000, $idOpen, $idSave, $idHelp

    $hgui = GUICreate("Rebar", 400, 396, -1, -1, BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU, $WS_MAXIMIZEBOX))

    ; create the rebar control
    $hReBar = _GUICtrlRebar_Create($hgui, BitOR($CCS_TOP, $WS_BORDER, $RBS_VARHEIGHT, $RBS_AUTOSIZE, $RBS_BANDBORDERS))

    $iMemo = GUICtrlCreateEdit("", 2, 100, 396, 250, $WS_VSCROLL)
    GUICtrlSetFont($iMemo, 10, 400, 0, "Courier New")


    ; create a toolbar to put in the rebar
    $hToolbar = _GUICtrlToolbar_Create($hgui, BitOR($TBSTYLE_FLAT, $CCS_NORESIZE, $CCS_NOPARENTALIGN))

    ; 添加标准系统位图
    Switch _GUICtrlToolbar_GetBitmapFlags($hToolbar)
        Case 0
            _GUICtrlToolbar_AddBitmap($hToolbar, 1, -1, $IDB_STD_SMALL_COLOR)
        Case 2
            _GUICtrlToolbar_AddBitmap($hToolbar, 1, -1, $IDB_STD_LARGE_COLOR)
    EndSwitch

    ; 添加按钮
    _GUICtrlToolbar_AddButton($hToolbar, $idNew, $STD_FILENEW)
    _GUICtrlToolbar_AddButton($hToolbar, $idOpen, $STD_FILEOPEN)
    _GUICtrlToolbar_AddButton($hToolbar, $idSave, $STD_FILESAVE)
    _GUICtrlToolbar_AddButtonSep($hToolbar)
    _GUICtrlToolbar_AddButton($hToolbar, $idHelp, $STD_HELP)

    ; create a input box to put in the rebar
    $hInput = GUICtrlCreateInput("Input control", 0, 0, 120, 20)

    ;add band containing the control
    _GUICtrlRebar_AddBand($hReBar, GUICtrlGetHandle($hInput), 120, 200, "Name:")

    ; add band containing the control to the begining of rebar
    _GUICtrlRebar_AddToolBarBand($hReBar, $hToolbar, "", 0)

    _GUICtrlRebar_SetBandBackColor($hReBar, 1, Int(0x00008B))
    _GUICtrlRebar_SetBandForeColor($hReBar, 1, Int(0xFFFFFF))

    For $x = 0 To _GUICtrlRebar_GetBandCount($hReBar) - 1
        $tBorders = _GUICtrlRebar_GetBandBordersEx($hReBar, $x)
        MemoWrite("Band Index " & $x)
        MemoWrite("==== Band Borders ====")
        MemoWrite("Left..: " & DllStructGetData($tBorders, "Left"))
        MemoWrite("Top...: " & DllStructGetData($tBorders, "Top"))
        MemoWrite("Right.: " & DllStructGetData($tBorders, "Right"))
        MemoWrite("Bottom: " & DllStructGetData($tBorders, "Bottom"))
        MemoWrite("======================")
        $tBorders = _GUICtrlRebar_GetBandRectEx($hReBar, $x)
        MemoWrite("====== Band Rect =====")
        MemoWrite("Left..: " & DllStructGetData($tBorders, "Left"))
        MemoWrite("Top...: " & DllStructGetData($tBorders, "Top"))
        MemoWrite("Right.: " & DllStructGetData($tBorders, "Right"))
        MemoWrite("Bottom: " & DllStructGetData($tBorders, "Bottom"))
        MemoWrite("======================")
    Next

    $btnExit = GUICtrlCreateButton("Exit", 150, 360, 100, 25)
    GUICtrlSetState($btnExit, $GUI_DEFBUTTON)
    GUICtrlSetState($btnExit, $GUI_FOCUS)

    GUISetState(@SW_SHOW)

    While 1
        Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE, $btnExit
                Exit
        EndSwitch
    WEnd
EndFunc   ;==>_Main

; 写入消息到 memo
Func MemoWrite($sMessage = "")
    GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite