begin process at 2012 05 29 16:14:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

GUI

 > 

Position rectangle client


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Position rectangle client

lundi 9 juillet 2007 à 21:20:44 | Position rectangle client

Shromilder

Bonjour tout le monde
Voila, je cherche à trouver comment avoir la position du client d'une boite de dialog.
J'ai bien la commande GetClientRec() mais cette fonctionne ne donne pas vraiment la vrai position par rapport à la position du dialog (ca donne 0,0 comme point en haut à gauche).
Si je créer une dialog avec rien dedans, spy++ me dit que le "Rectangle client" se trouve à 3x22 pixel du haut de ma fenètre.
Je voulais donc savoir comment cela etait trouvé.
Je crois avoir trouvé une bidouille qui consiste à utiliser la commande SystemParametersInfo(SPI_GETNONCLIENTMETRICS) pour trouver la taille de la police et la taille des bords mais bon... ca me parait plutot compliqué pour juste trouver des pixels
Si vous connaissez une fonction plus rapide ou même comment calculer le 22px, je suis preneur

Merci d'avance, cordialement.

lundi 9 juillet 2007 à 22:44:55 | Re : Position rectangle client

BruNews

Administrateur CodeS-SourceS
Réponse acceptée !
ClientToScreen() et tu compares avec GetWindowRect().

ciao...
BruNews, MVP VC++
lundi 9 juillet 2007 à 22:49:14 | Re : Position rectangle client

vicenzo

Membre Club
Réponse acceptée !
RECT r;
POINT p;

GetWindowRect(hWndClient, &r);

p.x = r.left;
p.y = r.top;

ScreenToClient(hWndParent, &p);


mardi 10 juillet 2007 à 00:14:23 | Re : Position rectangle client

Shromilder

Merci messieurs
J'avais vu ces fonctions mais j'avais pas internet à ce moment là donc impossible de voir ce que ca donnait.
Py quand j'ai retrouvé internet, j'ai oublié de les verifier
Bon ca marche!!!

[code]
POINT p;
p.x = 0;
p.y = 0;
ClientToScreen(hWndScreenshot,&p);
RECT rcScreenshot;
GetWindowRect(hWndScreenshot, &rcScreenshot);
int ClientX, ClientY;
ClientX = p.x - rcScreenshot.left;
ClientY = p.y - rcScreenshot.top;
[/code]

mardi 10 juillet 2007 à 00:35:53 | Re : Position rectangle client

Shromilder

sinon le mode bidouille je crois que c'est:
ClientX = GetSystemMetrics(SM_CXDLGFRAME);
ClientY = GetSystemMetrics(SM_CYCAPTION) + GetSystemMetrics(SM_CYDLGFRAME);

à confirmer

mardi 10 juillet 2007 à 00:37:04 | Re : Position rectangle client

Shromilder

14000 msgs BruNews, congratulations



Cette discussion est classée dans : trouver, client, position, dialog, rectangle


Répondre à ce message

Sujets en rapport avec ce message

VC++ 6 && popup menu [ par safira ] safiraSalut!Comment doit-on faire pour faire apparaître un popup menu suivant la position d'un dialog?Par exemple, j'ai le dialog qui apparaît dans un Position du curseur dans la zone client? [ par TCHATTE ] salut :) je voudrai savoir comment je peux connaitre la position de la souris, mais par rapport a ma zone client... donc ce que je peux faire c est a Trouver la position d'un caractère dans une chaine [ par katerson ] Bonjour, J'aimerai avoir votre avis sur le problème suivant : Ma chaine se formatte de la façon suivante: "RD-AAA=?" - AAA étant 3 lettres variables Problème pour calculer le H pour l'A star ( * ) [ par jedinos ] Bonjour à tous ! [url=http://www.siteduzero.com/tutoriel-3-34333-le-pathfinding-avec-a.html]Dans ce tuto du pathfinding A star[/url] , l'auteur ne no Au SECOURS !! [ par PepeDeLuxe ] Salut, Voila ça fait deux jours que je me prends la tete sur un truc ...Je travaille avec les MFC sous visual C++ 6 : J'ai crée tout simplement des r Client/Server [ par andoid ] Bonjour Je un souci dans mon programme au faite j'ai deux clients pirate et justicier et un serveur, les pirates doivent voir la position des justici Socket probléme [ par andoid ] Bonjour j'ai un serveur avec deux clients multijoueur differents j'ai utilisé select.. Mon probleme est lorsqu'un client place un joueur les autres cl Récupération données liste doublement chainée [ par olihya ] Bonjour, Je suis débutant et m'entraine au cpp. Je fais une petite application qui gère des comptes en banque. J'ai une liste doublement chainée de me probleme: dialog child disparait quand touche entrée appuyé [ par weexity ] salut a tous!!!!    j'ai creé 4 dialogs child non modal differentes dynamiquement avec plein de petits boutons, c'est cool et ca marche bien, sauf que


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,139 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales