Page 1 sur 1

Hauteur de la barre des taches

Posté : lun. 03 avr. 2017 23:44
par IsLaMalice
Bonjour,

Je souhaite tout simplement savoir quelle est la hauteur de ma barre des taches par une variable système...
60 pixels sur le PC du boulot, 40 sur mon fixe perso...

car je dois faire un clic a la coordonnée : @DesktopHeight- $hauteur_barre_des_taches -50

merci d'avance !

Is

Re: Hautur de la barre des taches  

Posté : mar. 04 avr. 2017 00:16
par Tlem
Bonsoir.
En adaptant le script de ce message : https://www.autoitscript.com/forum/topi ... ent=211754
Il y a peut être plus simple, mais j'ai pas cherché plus que ce que j'ai trouvé. ^^

$hMonitor = GetMonitorFromPoint(0, 0)
If $hMonitor <> 0 Then
    Dim $arMonitorInfos[2]
    If GetMonitorInfos($hMonitor, $arMonitorInfos) Then _
        Msgbox(0, "Hauteur barre des taches", $arMonitorInfos[0] - $arMonitorInfos[1])
EndIf

Exit

Func GetMonitorFromPoint($x, $y)
    $hMonitor = DllCall("user32.dll", "hwnd", "MonitorFromPoint", _
                                            "int", $x, _
                                            "int", $y, _
                                            "int", 0x00000000)
    Return $hMonitor[0]
EndFunc


Func GetMonitorInfos($hMonitor, ByRef $arMonitorInfos)
    Local $stMONITORINFOEX = DllStructCreate("dword;int[4];int[4];dword;char[" & 32 & "]")
    DllStructSetData($stMONITORINFOEX, 1, DllStructGetSize($stMONITORINFOEX))

    $nResult = DllCall("user32.dll", "int", "GetMonitorInfo", _
                                            "hwnd", $hMonitor, _
                                            "ptr", DllStructGetPtr($stMONITORINFOEX))
    If $nResult[0] = 1 Then
        $arMonitorInfos[0] = DllStructGetData($stMONITORINFOEX, 2, 4)
        $arMonitorInfos[1] = DllStructGetData($stMONITORINFOEX, 3, 4)
    EndIf

    Return $nResult[0]
EndFunc

Re: Hauteur de la barre des taches

Posté : sam. 08 avr. 2017 00:05
par IsLaMalice
merci pour ta réponse rapide,

mais finalement, c'est plus intelligent de passer par un $size = WinGetPos("[active]")
et de me baser la dessus : mouseclick("left",$abscisse, size(1]+size[3]- $nbpixel_du_bord).

Comme ca, je gère tous les cas : hauteur barre de tache différente, si la fenêtre n'est pas en plein écran, ...

merci quand même, ecnore désolé pour le dérangement mais je progresse :wink:

Is