_GDIPlus_PathBrushGetSurroundColorsWithCount
Получает цвета окружения кисти градиента
#Include <GDIP.au3>
_GDIPlus_PathBrushGetSurroundColorsWithCount($hPathGradientBrush)
Параметры
$hPathGradientBrush | Указатель на объект PathGradientBrush |
Возвращаемое значение
Успех: | Возвращает массив, содержащий цвета окружения кисти градиента: |
[0] - Количество цветов | |
[1] - Цвет 1 | |
[2] - Цвет 2 | |
[n] - Цвет n | |
Ошибка: | Возвращает -1 и либо: |
Если ошибка DllCall(), устанавливает @error и @extended возвращённые вызовом DllCall() | |
$GDIP_STATUS содержит не нулевое значение кода ошибки | |
$GDIP_ERROR: | |
1 - Сбой функции _GDIPlus_PathBrushGetSurroundColorCount, $GDIP_STATUS содержит код ошибки | |
2 - Объект PathGradientBrush не содержит никаких окружающих цветов | |
3 - Сбой функции _GDIPlus_PathBrushGetSurroundColorsWithCount, $GDIP_STATUS содержит код ошибки |
См. также
_GDIPlus_PathBrushSetSurroundColorsWithCountСм. также
Искать GdipGetPathGradientSurroundColorsWithCount в библиотеке MSDNПример
#include <GDIP.au3>
#include <GUIConstantsEx.au3>
#include <Array.au3>
_Example()
Func _Example()
Local $hGUI, $hGraphics, $hBrush, $aGetColors
Local $aColors[11] = [10, 0xFFFF0000, 0xFFFF0000, 0xFF0000FF, 0xFFFF0000, 0xFFFF0000, 0xFF0000FF, 0xFFFF0000, 0xFFFFFFFF, 0xFFFF0000, 0xFF0000FF]
Local $aPoints[11][2] = [[10],[303, 114],[215, 178],[248, 281],[160, 218],[72, 281],[105, 178],[17, 114],[126, 113],[160, 10],[194, 113]]
; Инициализирует библиотеку GDI+
_GDIPlus_Startup()
$hGUI = GUICreate("Получает цвета окружения кисти градиента", 400, 300, 10)
GUISetState()
; Создаёт графический объект из дескриптора окна
$hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI)
; Создаёт путь кисти градиента из точек
$hBrush = _GDIPlus_PathBrushCreate($aPoints)
; Устанавливает цвет центра кисти градиента
_GDIPlus_PathBrushSetCenterColor($hBrush, 0xFF00FF00)
; Устанавливает цвета окружения кисти градиента
_GDIPlus_PathBrushSetSurroundColorsWithCount($hBrush, $aColors)
; Заполняет многоугольник используя кисть градиента
_GDIPlus_GraphicsFillPolygon($hGraphics, $aPoints, $hBrush)
; Получает цвета окружения кисти градиента
$aGetColors = _GDIPlus_PathBrushGetSurroundColorsWithCount($hBrush)
If $aGetColors <> -1 Then
For $i = 1 To $aGetColors[0]
$aGetColors[$i] = StringFormat("0x%08X", $aGetColors[$i]) ; Преобразует в 16-ричный вид
Next
_ArrayDisplay($aGetColors)
EndIf
; Освобождает ресурсы
_GDIPlus_BrushDispose($hBrush)
_GDIPlus_GraphicsDispose($hGraphics)
; Закрывает библиотеку GDI+
_GDIPlus_Shutdown()
EndFunc ;==>_Example