Помгите чем можите -).Не могу никак сообразить надо снимать показатели с неактивного окна в процентах, для примера это было реализовано так
НО само собой в неактивном окне не работает ......поидее можно использовать вот такую функцию
..те используется Pixelgetcolor а как также задействовать pixelsearch ?
Код:
Func ControlMobHP($MobHPx, $MobHPy, $len) ; передаём в функцию координаты и длинну
Local $color = 0x9CD308 ; искать красный цвет RGB
local $position = PixelSearch (925, 64, 646, 64, $color,5,2,$hWnd); разброс яркости 4, шаг поиска каждый второй пиксель
If IsArray ($position) Then
$position[0] -= $MobHPx
local $Percent = $position[0] * 100 / $len2
$Percent = Ceiling ($Percent)
Return $Percent
EndIf
Return 0
EndFunc
НО само собой в неактивном окне не работает ......поидее можно использовать вот такую функцию
Код:
Func _WinAPI_PixelGetColor($x,$y) ;работает в неактивном(активном) окне с визуально видимыми точками
Local $Struct = DllStructCreate("int X;int Y")
$Ckoord = ControlGetPos( $titl, "", $klass) ; тут привязаться к окну и элементу окна
$Wkoord = WinGetPos( $titl ) ; чтоб координаты стали относительные
$iX = $x + $Ckoord + $Wkoord[0] + 4 ; пересчет на относительные координаты
$iY = $y + $Ckoord + $Wkoord[1] + 23 ; с учетом бордюра(4) и титульной строки (23)
DllStructSetData($Struct, "X", $iX)
DllStructSetData($Struct, "Y", $iY)
_WinAPI_ScreenToClient($titl, $Struct)
$iX = DllStructGetData($Struct, "X")
$iY = DllStructGetData($Struct, "Y")
$c = Pixelgetcolor ($iX, $iY);$iX, $iY,0xEF2C5A)
Return $c ;возвращает цвет точно такой же как и PixelGetColor
EndFunc
..те используется Pixelgetcolor а как также задействовать pixelsearch ?