Что нового

PixelSearch и PixelGetColour дают разные значения по одним координатам!

LightDemon

Новичок
Сообщения
24
Репутация
1
Объясните пожалуйста, почему PixelSearch и PixelGetColour дают разные цветовые значения по одним координатам?
Код:
Global $ax1 = 0
Global $ay1 = 0
Global $ax2 = @DesktopWidth
Global $ay2 = @DesktopHeight
Global $color=0xFFFFFF
Global $c = PixelSearch($ax2, $ay2, $ax1, $ay1, $color)
Global $var = PixelGetColor( $c[0],$c[1] )
MsgBox(0,"The hex color is", Hex($color,6) &"="&Hex($var, 6))
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,320
LightDemon,
Код:
Global $iX_1 = 0, $iY_1 = 0, $iX_2 = @DesktopWidth, $iY_2 = @DesktopHeight, $iColor = 0xFFFFFF, _
		$aCoord, $iVar

$aCoord = PixelSearch($iX_2, $iY_2, $iX_1, $iY_1, $iColor)
$iVar = PixelGetColor($aCoord[0] - 1, $aCoord[1] - 1)
MsgBox(64, '1', Hex($iColor, 6) & '=' & Hex($iVar, 6))

$aCoord = PixelSearch($iX_1, $iY_1, $iX_2, $iY_2, $iColor)
$iVar = PixelGetColor($aCoord[0], $aCoord[1])
MsgBox(64, '2', Hex($iColor, 6) & '=' & Hex($iVar, 6))
 
Автор
L

LightDemon

Новичок
Сообщения
24
Репутация
1
Madmasles, спасибо огромное за приведенный Вами код, только я так и не понял почему:
Код:
$iVar = PixelGetColor($aCoord[0] - 1, $aCoord[1] - 1)

Разъясните неучу на пальцах? :-[
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,320
LightDemon,
Если честно, то я и сам не знаю, почему так. ;)
ИМХО, это как-то должно быть связано с тем, что в Вашем случае цвет ищется справа налево. :scratch:
 

ggzgamer

Осваивающий
Сообщения
134
Репутация
23
Не работает, потому что происходит переактивация окон и изменение цветов на экране.
 
Верх