Coordonnées souris

wildTiger Messages postés 6 Date d'inscription dimanche 8 juin 2008 Statut Membre Dernière intervention 20 juin 2008 - 8 juin 2008 à 15:08
Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 - 9 juin 2008 à 10:43
salut tout le monde
je suis entrain de réaliser un miniprojet pour la conception d'un robot mais je suis pas forte en programmation. Si klk1 peut m'aider, je désire créer une interface ,quand je déplace la souris les corrdonnées s'affichent mais quand je clique les points sur lesquels j'ai cliqué doivent être marqués et leurs coordonnées sont récupérées automatiquement dans un fichier texte. tout ça en c++ et c'est urgent
                                                    Merci d'avance

7 réponses

cs_sam20 Messages postés 184 Date d'inscription lundi 31 juillet 2006 Statut Membre Dernière intervention 26 mai 2016 3
8 juin 2008 à 15:46
Salut , api api api.
int x,y;
POINT pos;
GetCursorPos(&pos);

x=pos.x;
y=pos.y

Un truc comme ca.
0
cs_sam20 Messages postés 184 Date d'inscription lundi 31 juillet 2006 Statut Membre Dernière intervention 26 mai 2016 3
8 juin 2008 à 15:50
Pardon j'oublié, ca te donne la position de la souris par rapport a l'ecran.
Si tu veux la position par rapport a ta fenetre rajoute apres GetCursorPos.
hWnd=handle de ta fenetre.

ScreenToClient(hWnd,&Pos);
0
wildTiger Messages postés 6 Date d'inscription dimanche 8 juin 2008 Statut Membre Dernière intervention 20 juin 2008
8 juin 2008 à 22:42
thanks sam20 mais comme j'ai dit j ss nulle côté programmation
si c possible j'aimerai avoir le code source pr créer une fenetre afficher les corddoneés de la souris pour tout déplacement et surtout a chaque clic de la souris marquer ce point et récupérer les cordonnées des points cliqués dans un fichier texte. je sais k c trop mais si klk1 a du temps pour m'aider je le remercie infiniment.
0
cs_sam20 Messages postés 184 Date d'inscription lundi 31 juillet 2006 Statut Membre Dernière intervention 26 mai 2016 3
8 juin 2008 à 22:47
Excuse mais on ne peut pas creer un prog pour toi ,juste t'aider.
Si tu ne connais pas les bases ,apprends les.

deja voici commment creer une fenetre.

#include <windows.h>

     LRESULT CALLBACK WindowProcedure(HWND, UINT, WPARAM,LPARAM);
     char szClassName[ ] = "Class";

int WINAPI WinMain(HINSTANCE hThisInstance, HINSTANCE hPrevInstance,
               LPSTR lpszArgument, int nFunsterStil) {
          HWND hwnd; MSG messages; WNDCLASSEX wincl;          wincl.hInstance hThisInstance; wincl.lpszClassName szClassName;
          wincl.lpfnWndProc = WindowProcedure;
          wincl.style = CS_HREDRAW|CS_VREDRAW;
          wincl.cbSize = sizeof(WNDCLASSEX);
          wincl.hIcon = LoadIcon(NULL, IDI_APPLICATION);
          wincl.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
          wincl.hCursor = LoadCursor(NULL, IDC_ARROW);          wincl.lpszMenuName NULL; wincl.cbClsExtra 0; wincl.cbWndExtra = 0;
          wincl.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);
          if(!RegisterClassEx(&wincl)) return 0;

          hwnd = CreateWindowEx(0, szClassName,
               "Ma 1ere fenetre",
               WS_OVERLAPPEDWINDOW,
               GetSystemMetrics(SM_CXSCREEN)/4,
               GetSystemMetrics(SM_CYSCREEN)/4,
               GetSystemMetrics(SM_CXSCREEN)/2,
               GetSystemMetrics(SM_CYSCREEN)/2,
               HWND_DESKTOP, NULL, hThisInstance, NULL );
          ShowWindow(hwnd, nFunsterStil);
          while(GetMessage(&messages, NULL, 0, 0)) {
               DispatchMessage(&messages);
          }
          return messages.wParam;
     }

     LRESULT CALLBACK WindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) {
          switch (message) {
               case WM_DESTROY:
                    PostQuitMessage(0);
                    break;
               default:
                    return DefWindowProc(hwnd, message, wParam, lParam);
          }
          return 0;
     }
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
wildTiger Messages postés 6 Date d'inscription dimanche 8 juin 2008 Statut Membre Dernière intervention 20 juin 2008
8 juin 2008 à 23:02
wé ça c sur et ce k je fais depuis l'aprèm
bon j'ai déjà trouvé ce prog dans plusieurs sites mais y a des erreurs de linking
Linking...
FEN.OBJ : error LNK2001: unresolved external symbol "long __stdcall WindowProcedure(struct HWND__ *,unsigned int,unsigned int,long)" ([mailto:?WindowProcedure@@YGJPAUHWND__@@IIJ@Z ?WindowProcedure@@YGJPAUHWND__@@IIJ@Z])
FEN.OBJ : error LNK2001: unresolved external symbol __chkesp
LINK : error LNK2001: unresolved external symbol _mainCRTStartup
Debug/FENETRE.exe : fatal error LNK1120: 3 unresolved externals
 

désolée pour le dérangement
0
wildTiger Messages postés 6 Date d'inscription dimanche 8 juin 2008 Statut Membre Dernière intervention 20 juin 2008
8 juin 2008 à 23:08
bon mnt il m'afiche:
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/fenetr.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.


fenetr.exe - 2 error(s), 0 warning(s)
0
Pistol_Pete Messages postés 1053 Date d'inscription samedi 2 octobre 2004 Statut Membre Dernière intervention 9 juillet 2013 7
9 juin 2008 à 10:43
Salut

Voici la marche a suivre pour creer ta fenetre:
Il faut creer un nouveau projet vide, win32 application (et non console application)
Projet ->ajouter au projet un nouvel element
Tu copies colles ce bout de code dans ton fichier.
Tu vas dans les proprietes du projet et dans la section general, tu changes le jeu de caractere d'UNICODE a Use Multi-Byte Character Set

Et tu compiles.

A+

Mon site internet : http://pistol.petesampras.free.fr
0
Rejoignez-nous