|
begin process at 2008 08 08 21:41:43
Derniers logiciels
|
Trouver une ressource (Nouvelle version du moteur, plus rapide & pertinent, essayez le !)
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
FAIRE GLISSER LA SOURIS
Information sur la source
Description
Bonjour. Cette Source pourrait faire partie d'une Blague : Une fois le Programme Lancé, votre Souris Glissera au Moindre de vos Déplacements. Pire, Arrivé au Bord de l'Ecran, la Souris Reapparaît à l'autre Bout, et Continue de Glisser. La Source vous donne l'Occasion de voir les Fonctions Windows permettant de Manipuler la Souris.
Source
- /*******************************************************************
- *** Petit Programme "Chiant" Faisant "Glisser" le Mulot ***
- *** Comme s'il Etait dans l'Espace...(Sans Frottement) ***
- *** De plus en Sortant de l'Ecran la Souris apparait ***
- *** à l'Autre Bout ***
- *** /!\ /!\ ***
- *** Il Faudra Fermer le Programme pour Arrêter le Cauchemard ***
- ********************************************************************/
-
-
-
-
-
-
-
-
- // *********************************************************************************************
- // Déclaration des Entêtes *********************************************************************
- // *********************************************************************************************
-
- #include <windows.h>
- #include <iostream.h>
- #include <stdio.h>
-
-
- // *********************************************************************************************
- // Déclaration des Fonctions *******************************************************************
- // *********************************************************************************************
-
- Deplacement(POINT &PointAncien , POINT &PointRecent);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- // *********************************************************************************************
- // Programme Principal *************************************************************************
- // *********************************************************************************************
-
-
- int main()
- {
-
-
-
- //******************************** Création des Variable Locale ********************************
-
- // Stockage des Coordonnées à l'Instant t1,t2,t3
- POINT P1,P2;
-
- // ******************************* Fin de Création des Variables Locale ************************
-
-
-
-
-
-
-
- // Obtient la Position du Curseur à l'instant t1
- GetCursorPos(&P1);
-
- // On Rends "Explicitement" la main à Windows
- Sleep(8);
-
-
- //*************************************** Boucle Infini ****************************************
- do
- {
- // Stockage des Coordonées de P2(t2)
- GetCursorPos(&P2);
-
- // Fait Glisser la Souris (Selon de Déplacement Observé entre t1 et t2)
- Deplacement(P1 , P2);
-
- // On Rends "Explicitement" la main à Windows
- Sleep(8);
-
- // Stockage des Coordonées de P1(t1)
- GetCursorPos(&P1);
-
- // Fait Glisser la Souris (Selon de Déplacement Observé entre t2 et t3)
- Deplacement(P2 , P1);
-
- Sleep(8);
-
- }while(1);
- //************************************** Fin Boucle Infini *************************************
-
-
- return 0;
- } // fin de main
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- // **************************************************
- // * *
- // * Fonction Gérant les Déplacements de la Souris *
- // * --------------------------------------------- *
- // * *
- // * *
- // * Des Ajustements sont Effectuer pour Permettre *
- // * à la Souris d'Apparaître de l'Autre côté de *
- // * l'Ecran Lorsque l'on Dépasse du Cadre *
- // * *
- // **************************************************
-
-
-
-
- Deplacement(POINT &P1 , POINT &P2)
- {
-
-
- // Stockage des Coordonnées à l'Instant t1,t2,t3
- long x1=0,y1=0 ,x2=0,y2=0,x3,y3;
-
- // Stockage des Coordonnées MAX de l'Ecran
- POINT Ecran = {GetSystemMetrics(SM_CXSCREEN)-1, GetSystemMetrics(SM_CYSCREEN)-1};
-
- // Stockage du Vecteur de Déplacement
- POINT Delta;
-
- // Calcul du Vecteur de Déplacement
- Delta.x = (P2.x-P1.x);
- Delta.y = (P2.y-P1.y);
-
-
- // Récupération des Données
- x1=P1.x;
- y1=P1.y;
-
- x2=P2.x;
- y2=P2.y;
-
-
- // Prévoit le Prochain Déplacement
- // (Sans l'Effectuer car il y aura peut être des Ajustements à faire)
- x3=x2+Delta.x;
- y3=y2+Delta.y;
-
-
- // Tester le Dépassement Droite-Gauche (Axe x)
- if ( (x3>=(Ecran.x)) || (x3<=0) )
- {
-
-
- // Changer les Prévisions en Cas de Dépassement en Positif (Vers la Gauche)
- if ( x3>=(Ecran.x) )
- {
- x3=(0+Delta.x) - (Ecran.x-x2);
- x2=0 - (Ecran.x-x2);
- }
-
-
- // Changer les Prévisions en Cas de Dépassement en Négatif (Vers la Droite)
- if ( x3<=0 )
- {
- x3=Ecran.x+Delta.x+x2;
- x2=Ecran.x+x2;
- }
-
- } // Fin du Test (Axe x)
-
-
-
-
- // Tester le Dépassement Haut-Bas (Axe y)
- if( (y3>=Ecran.y) || (y3<=0) )
- {
-
-
- // Changer les Prévisions en Cas de Dépassement en Positif (Vers le Haut)
- if ( y3>=Ecran.y )
- {
- y3=(0+(Delta.y)) - (Ecran.y-y2);
- y2=0 - (Ecran.y-y2);
- }
-
-
-
- // Changer les Prévisions en Cas de Dépassement en Négatif (Vers le Bas)
- if ( y3<=0 )
- {
-
- y3=Ecran.y+(Delta.y)+y2;
- y2=Ecran.y+y2;
- }
-
- } // Fin du Test (Axe y)
-
-
- // On Réenregistre P2 car il servira pour le Prochain Déplacement
- P2.x=x2;
- P2.y=y2;
-
-
- // Effectue le Déplacement (Si Besoin, des Ajustements ont été faits depuis les Prévisions)
- SetCursorPos(x3,y3);
-
- Sleep (8);
-
-
- } // Fin de Deplacement
/*******************************************************************
*** Petit Programme "Chiant" Faisant "Glisser" le Mulot ***
*** Comme s'il Etait dans l'Espace...(Sans Frottement) ***
*** De plus en Sortant de l'Ecran la Souris apparait ***
*** à l'Autre Bout ***
*** /!\ /!\ ***
*** Il Faudra Fermer le Programme pour Arrêter le Cauchemard ***
********************************************************************/
// *********************************************************************************************
// Déclaration des Entêtes *********************************************************************
// *********************************************************************************************
#include <windows.h>
#include <iostream.h>
#include <stdio.h>
// *********************************************************************************************
// Déclaration des Fonctions *******************************************************************
// *********************************************************************************************
Deplacement(POINT &PointAncien , POINT &PointRecent);
// *********************************************************************************************
// Programme Principal *************************************************************************
// *********************************************************************************************
int main()
{
//******************************** Création des Variable Locale ********************************
// Stockage des Coordonnées à l'Instant t1,t2,t3
POINT P1,P2;
// ******************************* Fin de Création des Variables Locale ************************
// Obtient la Position du Curseur à l'instant t1
GetCursorPos(&P1);
// On Rends "Explicitement" la main à Windows
Sleep(8);
//*************************************** Boucle Infini ****************************************
do
{
// Stockage des Coordonées de P2(t2)
GetCursorPos(&P2);
// Fait Glisser la Souris (Selon de Déplacement Observé entre t1 et t2)
Deplacement(P1 , P2);
// On Rends "Explicitement" la main à Windows
Sleep(8);
// Stockage des Coordonées de P1(t1)
GetCursorPos(&P1);
// Fait Glisser la Souris (Selon de Déplacement Observé entre t2 et t3)
Deplacement(P2 , P1);
Sleep(8);
}while(1);
//************************************** Fin Boucle Infini *************************************
return 0;
} // fin de main
// **************************************************
// * *
// * Fonction Gérant les Déplacements de la Souris *
// * --------------------------------------------- *
// * *
// * *
// * Des Ajustements sont Effectuer pour Permettre *
// * à la Souris d'Apparaître de l'Autre côté de *
// * l'Ecran Lorsque l'on Dépasse du Cadre *
// * *
// **************************************************
Deplacement(POINT &P1 , POINT &P2)
{
// Stockage des Coordonnées à l'Instant t1,t2,t3
long x1=0,y1=0 ,x2=0,y2=0,x3,y3;
// Stockage des Coordonnées MAX de l'Ecran
POINT Ecran = {GetSystemMetrics(SM_CXSCREEN)-1, GetSystemMetrics(SM_CYSCREEN)-1};
// Stockage du Vecteur de Déplacement
POINT Delta;
// Calcul du Vecteur de Déplacement
Delta.x = (P2.x-P1.x);
Delta.y = (P2.y-P1.y);
// Récupération des Données
x1=P1.x;
y1=P1.y;
x2=P2.x;
y2=P2.y;
// Prévoit le Prochain Déplacement
// (Sans l'Effectuer car il y aura peut être des Ajustements à faire)
x3=x2+Delta.x;
y3=y2+Delta.y;
// Tester le Dépassement Droite-Gauche (Axe x)
if ( (x3>=(Ecran.x)) || (x3<=0) )
{
// Changer les Prévisions en Cas de Dépassement en Positif (Vers la Gauche)
if ( x3>=(Ecran.x) )
{
x3=(0+Delta.x) - (Ecran.x-x2);
x2=0 - (Ecran.x-x2);
}
// Changer les Prévisions en Cas de Dépassement en Négatif (Vers la Droite)
if ( x3<=0 )
{
x3=Ecran.x+Delta.x+x2;
x2=Ecran.x+x2;
}
} // Fin du Test (Axe x)
// Tester le Dépassement Haut-Bas (Axe y)
if( (y3>=Ecran.y) || (y3<=0) )
{
// Changer les Prévisions en Cas de Dépassement en Positif (Vers le Haut)
if ( y3>=Ecran.y )
{
y3=(0+(Delta.y)) - (Ecran.y-y2);
y2=0 - (Ecran.y-y2);
}
// Changer les Prévisions en Cas de Dépassement en Négatif (Vers le Bas)
if ( y3<=0 )
{
y3=Ecran.y+(Delta.y)+y2;
y2=Ecran.y+y2;
}
} // Fin du Test (Axe y)
// On Réenregistre P2 car il servira pour le Prochain Déplacement
P2.x=x2;
P2.y=y2;
// Effectue le Déplacement (Si Besoin, des Ajustements ont été faits depuis les Prévisions)
SetCursorPos(x3,y3);
Sleep (8);
} // Fin de Deplacement
Conclusion
!!! ATTENTION !!! !!! A LIRE AVANT DE LANCER LE PROGRAMME !!!
Pour Stopper le Mouvement de la Souris, il faudra Fermé le programme. Cela ce fait en Fermant la Fenêtre DOS : "Souris_Glisse.exe" .
Comme la Souris sera (Pour les Moins Doués) Incontrôlable, vous pouvez
utiliser ALT+ENTREE pour Fermer le Programme.
Si vous avez perdu le Focus sur l'Application (En cliquant n'import où !!) Il faudra dabord faire ALT+TAB pour retourner sur "Souris_Glisse.exe" .
PS: Essayer de Faire un Dessin sur Paint ;-)
Fichier Zip
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
Télécharger le zip
Sources de la même categorie
Commentaires
Discussions en rapport avec ce code source
|
CalendriCode
| | | L | M | M | J | V | S | D |
| | | | | 1 | 2 | 3 |
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
|
Téléchargements
Logiciels à télécharger sur le même thème :
|
|