begin process at 2012 05 28 18:45:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

Multimédia

 > 

Comparer la position du curseur à 2 instants différents


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

Comparer la position du curseur à 2 instants différents

jeudi 25 mai 2006 à 18:44:54 | Comparer la position du curseur à 2 instants différents

julien_boss

Salut,

je cherche, grâce aux APIs windows, à connaitre et comparer la position du curseur à 2 instants différents et quand le bouton gauche est enfoncé. C'est pour scroller mon programme enfaite. Vous auriez une idée de comment faire svp ?

ala, merci tout l'monde :D
jeudi 25 mai 2006 à 20:44:20 | Re : Comparer la position du curseur à 2 instants différents

24Karas

regarde dans msdn les messages :
   - WM_LBUTTONDOWN (tu as X dans LOWORD(lParam) et Y dans HIWORD(lParam))
   - WM_LBUTTONUP
   - WM_MOUSEMOVE

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/userinput/mouseinput/mouseinputreference/mouseinputmessages/wm_lbuttondown.asp

++
24K
jeudi 25 mai 2006 à 20:57:10 | Re : Comparer la position du curseur à 2 instants différents

julien_boss

Merci mais enfaite je connais ces messages, le problème c'est que je sais pas comment comparer 2positions différentes à partir de ces messages. J'suis sûr que la soluce doit etre toute conne, mais bon faut croire que je suis mauvais c'est tout ^^
jeudi 25 mai 2006 à 21:20:45 | Re : Comparer la position du curseur à 2 instants différents

vecchio56

Administrateur CodeS-SourceS
Tu savegarde dans une variable le premier coup, comme ca tu l'a sous la main quand tu en as besoin pour faire la "comparaison"
C'est tellement évident que je me demande si j'ai bien compris ton problème
jeudi 25 mai 2006 à 22:19:01 | Re : Comparer la position du curseur à 2 instants différents

julien_boss

Oui je comprend qu'il faut que je fasse un teste grâce à 2 couples de variables, mais le problème c'est que je sais pas où faire le premier coup. Parce que si je fais ca dans le message WM_LBUTTONDOWN, comme ca :

        case WM_LBUTTONDOWN:
             x1 = LOWORD(lParam);
             y1 = HIWORD(lParam);
             x2 = LOWORD(lParam);
             y2 = HIWORD(lParam);
            
             if(x1!=x2 || y1!=y2)
              MessageBeep(0);

             break;

Ca ne pourra jamais marcher vu que les 2 couples de variables seront remplis au même moment et auront donc les mêmes valeurs.
Il faut comprendre que la différence ne peut etre que de 1 ou -1 en x et en y parce que je veux faire cette comparaison qu'à partir du moment où le bouton gauche de la souris est enfoncé(moment T1). Et le moment T2 serait donc quand je bouge.

J'espère que vous voyez sur quoi je bugge
jeudi 25 mai 2006 à 22:23:47 | Re : Comparer la position du curseur à 2 instants différents

vecchio56

Administrateur CodeS-SourceS
Réponse acceptée !
Justement, le premier coup tu prends x1 et y1 et leu deuxième, x2 et y2:

BOOL firstTime = TRUE;

case WM_LBUTTONDOWN:
  if(firstTime)
  {
    x1 = LOWORD(lParam);
    y1 = HIWORD(lParam);
  }
  else
  {
    x2 = LOWORD(lParam);
    y2 = HIWORD(lParam);
            
    if(x1!=x2 || y1!=y2)
      MessageBeep(0);
  }
  firstTime ^= 1;
  break;
jeudi 25 mai 2006 à 22:40:45 | Re : Comparer la position du curseur à 2 instants différents

julien_boss

J'avais meme pas pensé au booléen !  J'ai honte de moi lol

merci ;)
jeudi 25 mai 2006 à 22:47:22 | Re : Comparer la position du curseur à 2 instants différents

julien_boss

euh par contre un tit probleme là. Pour savoir comment calculer la différence, j'affiches les 4 valeurs x1 x2, y1 y2. Sauf que pour x1 et y1 j'obtient des nombres du genre 20122245565. J'crois pouvoir dire sans trop de mal que c'est pas normale

vous sauriez d'où ca vient ? Mon code =>

       case WM_MOUSEMOVE: 
            
             switch(wParam){
             case MK_LBUTTON:
                  
                  if(firstTime)
                  {
                      X1 = LOWORD(lParam);
                      Y1 = HIWORD(lParam);

                      firstTime = false;
                  }
                  else
                  {
                      X2 = LOWORD(lParam);
                      Y2 = HIWORD(lParam);
                               
                      if(X1!=X2 || Y1!=Y2)
                      {
                        char pt[20];
                        wsprintf(pt, "%i et %i, %i et %i", X1, Y1, X2, Y2);
                        MessageBox(hwnd, pt, "points", MB_OK);                        
                        
                        X1 = LOWORD(lParam);
                        Y1 = HIWORD(lParam); 
                      }
                       
                  }

                  break;
                
             }
             break;

merci

jeudi 25 mai 2006 à 22:49:27 | Re : Comparer la position du curseur à 2 instants différents

vecchio56

Administrateur CodeS-SourceS
pour imprimer un entier c'est %d, pas %i
jeudi 25 mai 2006 à 22:51:52 | Re : Comparer la position du curseur à 2 instants différents

julien_boss

Bah j'ai toujours fais %i, et ca a toujours marché. %d c'est pas pour double+int plutot ?

bref ca revient au meme

1 2

Cette discussion est classée dans : comparer, curseur, position, différents, instants


Répondre à ce message

Sujets en rapport avec ce message

Position du curseur [ par CyberP ] En mode console (MS-DOS), comment changer la position du curseur sur l'écran pour pouvoir écrire à un endroit précis ?Dans un autre compilateur, la fo Position curseur dans un fichier texte [C++] [ par MissSixty ] Salut !Je cherche à comprendre le bogue dans un programme tout simple qui me permet de récupérer la position du curseur (en nombres de lignes) en fin GLUT Position du curseur [ par dark_naruto25 ] Salut les compagnons,Je cherche depuis pas mal de temps une fonction GLUT (voire OpenGL) qui me permettrait d'avoir la position du curseur à tout mome !!! Position du curseur !!! [ par yoyo269 ] Bonjour à toutes et à tous !Je cherche un moyen (en mode console sous Linux) de pouvoir placer le curseur là où je le voudrais.J'ai essayé avec ce cod Connaitre la position du curseur!!! [ par tormoj ] Salut tout le monde,je voudrais savoir comment on fait pour connaitre la position du curseur dans une EditBox?Et enfin comment on fait pour griser tou position de curseur [ par ni0urk ] Bonjur, j'aimerais pouvoir positionner mon cursuer présent dans une fenêtre prévu pour taper du texte à un poistion pré-défini. Est ce possible et e Console et position du curseur [ par neodelphi ] Bonjour tout le monde, je suis actuellement en train de faire un programme dans lequel j'utilise la console pour afficher des messages de debug and co Position du curseur par rapport au texte d'un EDITTEXT [ par julien_boss ] Une nouvelle fois bonjour à tous,dans le message de notification EN_CHANGE d'un EDITTEXT, je cherche à savoir si la valeur entrée est "valide" (à mon Position du Curseur [ par Ftrunk ] Salut je suis à la recherche d'un code en C++ sous Linux permettant de connaitre la position du curseur de la souris a chaque instant. Je m'explique : [DotNet] curseur textbox [ par stgi02 ] bonjour, j' ai réalisé un hyper terminal ,les données reçues et ce que j'envoie s'affiche dans une textbox mais mon problème est à l'instant où je r


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

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,420 sec (3)

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