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
Hauteur de la barre des taches
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
-
- Niveau 4
- Messages : 50
- Enregistré le : lun. 03 avr. 2017 23:31
- Status : Hors ligne
Hauteur de la barre des taches
Modifié en dernier par IsLaMalice le mar. 04 avr. 2017 21:18, modifié 1 fois.
- Tlem
- Site Admin
- Messages : 11784
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: Hautur de la barre des taches
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é. ^^
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
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
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
-
- Niveau 4
- Messages : 50
- Enregistré le : lun. 03 avr. 2017 23:31
- Status : Hors ligne
Re: Hauteur de la barre des taches
merci pour ta réponse rapide,
mais finalement, c'est plus intelligent de passer par un
et de me baser la dessus :
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
Is
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

Is