Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3751 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  pb avec GetWindowRect en config double écran

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

pb avec GetWindowRect en config double écran

n°1429971
zemumu
Posté le 23-08-2006 à 15:09:54  profilanswer
 

Bonjour à tous,
 
J'utilise GetWindowRect puis SetWindowPos pour redimensionner dynamiquement un control de texte dans une boite de dialogue.  
 
Tout se passe très bien en config simple écran où quand la boite de dialogue et la fenêtre de mon application sont affichées sur l'écran principal en config double écran. En gros, GetWindowRect me renvoit les coordonnées 22, 147, 113 et 322 pour top, bottom, left et right.
 
Mais quand la fenêtre de mon application est affichée sur le deuxième écran et que ma boite de dialogue est sur le premier, GetWindowRect me renvoit 22, 147, 1137 et 1346 !! Inutile de vous dire qu'avec les coordonnées suivantes, le SetWindowPos n'arrive pas à afficher le control de texte dans sa boite de dialogue.
 
Bref, la boite de dialogue étant toujours à la même place, je n'ai pas les même coordonnées selon la position de la fenêtre principale de l'application !  :??:  
 
Si quelqu'un a une idée pour résoudre ce problème...
 
merci


Message édité par zemumu le 23-08-2006 à 15:10:17
mood
Publicité
Posté le 23-08-2006 à 15:09:54  profilanswer
 

n°1430382
straffo
Posté le 24-08-2006 à 09:55:08  profilanswer
 

J'ai un vague souvenir d'avoir du utiliser monitorFromRect (ou une API de nom voisin) dans ce cas
 
une petite recherche MSDN donne : http://windowssdk.msdn.microsoft.c [...] 34817.aspx
 
bon courage :)
 

n°1430401
retrox
Posté le 24-08-2006 à 10:14:53  profilanswer
 

GetWindowRect renvoie des screen coordinates. SetWindowPos prend des client coordinates.

n°1430628
zemumu
Posté le 24-08-2006 à 13:33:09  profilanswer
 

retrox a écrit :

GetWindowRect renvoie des screen coordinates. SetWindowPos prend des client coordinates.


 
Oui je viens de m'en apercevoir ce qui m'a permis de trouver une solution à mon problème. Viiblement, mon prédécesseur qui a codé cela, lui ne l'avait pas vu...
 
Par contre, je comprend toujours pas pourquoi GetWindowRect m'a donné des corrdonnées qui sont sur le deuxième écran alors que ma boite de dialog est sur le premier...  :pt1cable: mais bon...  

n°1430676
retrox
Posté le 24-08-2006 à 14:41:46  profilanswer
 

Tu peux avoir le "2e" écran à gauche ou à droite (voire en dessous ou au dessus). C'est configurable normalement.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  pb avec GetWindowRect en config double écran

 

Sujets relatifs
[API win 32] faire un capture de l'ecranAjout d'un deuxième écran
Programé une capture d'ecran sous windowsDouble ouverture de pop up [résolu]
Image a l'ecranFond d'écran avec un fichier CSS externe
Tableau double entréeEcrire a un certain endroit de l'écran
changer fréquence de rafraichissement de l'écran[C#.NET] Capture d'ecran d'une balise div
Plus de sujets relatifs à : pb avec GetWindowRect en config double écran


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR