Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Droopy
Messages : 1151 Inscription : lun. 19/juil./2004 22:31
Message
par Droopy » mar. 10/oct./2006 18:38
Ce code renvoie la position de la fenêtre recherchée ( par son titre )
Mais uniquement la zone client, c'est à dire que ces fonctions ne renvoient pas la taille totale de la fenêtre, donc zone client + barre de titre.
Auriez vous une idée
Code : Tout sélectionner
handle=FindWindow_(0,"Titre de la fenêtre recherchée")
If handle
GetWindowRect_(handle,a.rect)
Debug a\left
Debug a\right
Debug a\top
Debug a\bottom
GetClientRect_(handle,a.rect)
Debug ""
Debug a\left
Debug a\right
Debug a\top
Debug a\bottom
SetWindowPos_(handle,#HWND_TOP,1276,0,1288,1028,#SWP_NOACTIVATE)
EndIf
Flype
Messages : 2431 Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes
Message
par Flype » mar. 10/oct./2006 19:10
je ne suis pas sur de t'avoir bien compris droopy,
mais GetTitleBarInfo_() va sans doute t'aider
ou meme GetWindowInfo_() pour avoir la taille des bordures.
(?)
Code : Tout sélectionner
;--
#CCHILDREN_TITLEBAR = 5
Structure TITLEBARINFO
cbSize.l
rcTitleBar.RECT
rgstate.l[#CCHILDREN_TITLEBAR+1]
EndStructure
;---
Handle = FindWindow_(0, "jaPBe V3")
If Handle
If GetWindowRect_(Handle, rc.RECT)
Debug rc\left
Debug rc\right
Debug rc\top
Debug rc\bottom
Debug ""
EndIf
If GetClientRect_(Handle, rc.RECT)
Debug rc\left
Debug rc\right
Debug rc\top
Debug rc\bottom
Debug ""
EndIf
pwi.WINDOWINFO\cbSize = SizeOf(WINDOWINFO)
If GetWindowInfo_(Handle, pwi)
Debug pwi\cxWindowBorders
Debug pwi\cyWindowBorders
Debug ""
EndIf
pti.TITLEBARINFO\cbSize = SizeOf(TITLEBARINFO)
If GetTitleBarInfo_(Handle, pti)
Debug pti\rcTitleBar\left
Debug pti\rcTitleBar\right
Debug pti\rcTitleBar\top
Debug pti\rcTitleBar\bottom
Debug ""
EndIf
EndIf
Droopy
Messages : 1151 Inscription : lun. 19/juil./2004 22:31
Message
par Droopy » mar. 10/oct./2006 21:07
Merci Flype, je vais regarder ça avec intéret.
A+
nico
Messages : 3702 Inscription : ven. 13/févr./2004 0:57
Message
par nico » mer. 11/oct./2006 11:20
GetWindowRect renvoie bien la taille réelle de la fenêtre, il me semble?
bernard13
Messages : 1221 Inscription : mer. 05/janv./2005 21:30
Message
par bernard13 » mer. 11/oct./2006 14:13
je comprend rien c'est du chinois pour moi
Droopy
Messages : 1151 Inscription : lun. 19/juil./2004 22:31
Message
par Droopy » mer. 11/oct./2006 14:16
Oui elle renvoie bien la taille réelle / son emplacement ( Fonctionne même si multi-écran )
nico
Messages : 3702 Inscription : ven. 13/févr./2004 0:57
Message
par nico » mer. 11/oct./2006 17:13
Droopy a écrit : Oui elle renvoie bien la taille réelle / son emplacement ( Fonctionne même si multi-écran )
Ben alors c'est quoi le soucis?
Flype
Messages : 2431 Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes
Message
par Flype » mer. 11/oct./2006 17:38
nico a écrit : Droopy a écrit : Oui elle renvoie bien la taille réelle / son emplacement ( Fonctionne même si multi-écran )
Ben alors c'est quoi le soucis?
ah, ouf, enfin qq qui ce dit la meme chose que moi
parceque moi aussi je comprends pas la premiere question.
Droopy
Messages : 1151 Inscription : lun. 19/juil./2004 22:31
Message
par Droopy » mer. 11/oct./2006 18:44
Effectivement, désolé de vous avoir embêté mais le premier code posté fonctionnait.
Je pensais qu'il renvoyais des valeurs erronées car avec mon écran ( résolution de 1280x1024 ) avec une fenêtre en plein écran, cette fonction renvoie 1288x1032 à la position -4,-4 !
En fait il est normal d'avoir des valeurs non normales, il fallait juste le savoir.
Merci encore