Функция SetPixel

Declare Function SetPixel Lib "gdi32.dll" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, ByVal crColor As Long) As Long

Платформа

SetPixel устанавливает цвет единственного(отдельного) пиксела на устройстве. Из-за несоответствия цвета на устройстве, иногда цвет, фактически используемый на устройстве может отличиться от цвета, указанного функцией. Функция будет терпеть неудачу, если указанный пиксел невидим или вне диапазона при вызове функции.

Возвращаемое значение

В случае ошибки функция возвращает -1 (используйте GetLastError для получения кода ошибки). В успешном случае функция возвращает значение RGB цвета.

Параметры

hdc
Дескриптор контекста устройства.
X
Координата x пиксела.
Y
Координата y пиксела.
crColor
Значение RGB цвета пиксела.

Пример

' Беспорядочно окрасим все пикселы в окне Form1. Этот пример
' получает прямоугольник Form1 и выполняет итерации 
'через все точки (пикселы) внутри него.
Dim winrect As RECT  ' прямоугольник окна Form1
Dim rgbval As Long  'значение RGB случайно выбранного цвета
Dim x As Long, y As Long  ' счетчик для координат x и y
Dim retval As Long  ' возвращаемое значение

' получаем прямоугольник окна Form1.
retval = GetWindowRect(Form1.hWnd, winrect)

' Цикл через каждый пиксел в пределах Form1.
For y = 0 To winrect.bottom - winrect.top
  For x = 0 To winrect.right - winrect.left
    ' берем случайный цвет,  выбирая значения между 0 и 255
    ' включительно для каждого компонента цвета.
    rgbval = RGB(Int(256 * Rnd), Int(256 * Rnd), Int(256 * Rnd))
    ' установим пиксел в цвет,указанный выше.
    retval = SetPixel(Form1.hDC, x, y, rgbval)
  Next x
Next y

Схожие функции
GetPixel, SetPixelV
Категория
Графика

В начало.