DrawEdge winapi

    WinApi Функция DrawEdge

    Описание:
    function DrawEdge(hdc: HDC; var qrc: TRect; edge: UINT; grfFlags: UINT): BOOL;

    Функция предназначена для рисования бордюров. Удобно при создании собственнных компонентов для автомитизации отрисовки бордюров кнопок, рамок и.т.д.Рамка рисуется в виде комбинации из двух прямоугольников — внутреннего (inner) и внешнего (outer). Каждый из них может быть выпуклым (raised) либо вдавленным (sunken). Тип рамки определяется параметром edge.

    Параметры:
    hdc: Хендл контекста устройтсва.

    qrc: Структура TRect которая определяет логические координаты прямоуголника бордюра.

    edge: Указывает тип отрисовки внутреннего и внешнего края бордюра. Должен быть комбинащией одного флага внутренней границы и одного флага внешней границы.
    Флаги внутренней границы:
    BDR_RAISEDINNER - Приподнятый
    BDR_SUNKENINNER - Утопленный
    Флаги внешней границы:
    BDR_RAISEDOUTER - Приподнятый
    BDR_SUNKENOUTER - Утопленный

    Кроме того флаг края может принимать еще несколько значений:
    EDGE_BUMP - Комбинация из флагов BDR_RAISEDOUTER и BDR_SUNKENINNER
    EDGE_ETCHED - Комбинация из флагов BDR_SUNKENOUTER и BDR_RAISEDINNER
    EDGE_RAISED - Комбинация из флагов BDR_RAISEDOUTER и BDR_RAISEDINNER
    EDGE_SUNKEN - Комбинация из флагов BDR_SUNKENOUTER и BDR_SUNKENINNER

    grfFlags: Определяет отрисовку и тип бордюра:
    BF_BOTTOM - Рисуется нижняя полоса бордюра
    BF_TOP - Рисуется верхняя полоса бордюра

    BF_LEFT - Рисуется левая полоса бордюра
    BF_RIGHT - Рисуется правая полоса бордюра
    BF_BOTTOMLEFT - Рисуется левый нижний угол
    BF_BOTTOMRIGHT - Рисуется левый правый угол
    BF_TOPLEFT - Рисуется левый верхний угол
    BF_TOPRIGHT - Рисуется правый верхний угол
    BF_RECT - Рисуется вся рамка
    BF_DIAGONAL - Русует границу по диагонили. Флаги этой группы чаще используются для рисования конопок разбитых по диагонали на две секции.
    BF_DIAGONAL_ENDBOTTOMLEFT - Диагональ исходит из верхнего правого угла, заходит в нихний левый

    BF_DIAGONAL_ENDBOTTOMRIGHT - Диагональ исходит из верхнего левого угла, заходит в нижний правый
    BF_DIAGONAL_ENDTOPLEFT - Диагональ исходит из нижнего правого угла, заходит в верхний левый
    BF_DIAGONAL_ENDTOPRIGHT - Диагональ исходит из нижнего левого угла, заходит в верхний правый
    BF_FLAT - Плоская граница(стиль OfficeXP)
    BF_SOFT - Мягкие кнопки(стиль OfficeXP)
    BF_MONO - Рисует одномерную рамку
    BF_MIDDLE - Заливает внутреннюю область рамки текущей кистью

    BF_ADJUST - Корректирует параметр qrc так, что после отрисовки он соответствует внутренней области рамки. Удобно применять для рисования в дальнейшем

    Возвращаемое значение:
    Если функция добивается успеха, то возвращается не ноль. В случае неудачи ноль. Для дополнительной информации об ошибке вызовите функцию GetLastError.

    Материал взят из:
    Русская спpавка по Windows API



    Последние из рубрики

    ОтменитьДобавить комментарий