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 !

Sujet : DirectDrawn et souris [ Windows / DirectX ] (SnOOpss)

jeudi 25 mai 2006 à 16:37:07 | DirectDrawn et souris

SnOOpss

Bonjour je suis en train de programmer un jeu en directDrawn en mode fenetré qui se joue a la souris et j'ai eu quelques problemes. En fait a cause du mode fenetré je garde la souris presente sous XP.

1 essai: Souris gerée avec DirectInput en mode absolu, compliqué et les coordonnées obtenue n'on rien a voir avec les pixels a l'ecran.

2 eme essai : Souris gérée avec les api Windows GetCursorPos(), enfantin mais les coordonnées obtenue n'ont toujours rien a voir avec les pixels de l'ecran (ce n'est pas un simple decalage constant).

J'ai essayé de faire une fenetre aux meme dimension que l'ecran DD mais ca n'arrange pas grand chose.
Je sait pas trop quoi mettre par comme code pour expliquer.


[code]
    //-- Create the back buffer

        ddsd.dwFlags = DDSD_WIDTH | DDSD_HEIGHT | DDSD_CAPS;
        // Make our off-screen surface 320x240
        ddsd.dwWidth = 320;
        ddsd.dwHeight = 240;
        // Create an offscreen surface
        ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;

        hr = g_pDD->CreateSurface(&ddsd, &g_pDDSBack, NULL);
[/code]

et
[code]
    HWND g_hwndMain = CreateWindowEx(WS_EX_TOPMOST, "Applid3d", "titre", WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_VISIBLE,CW_USEDEFAULT, CW_USEDEFAULT,320, 240, 0,0,hInstance, 0 );
[/code]


jeudi 25 mai 2006 à 17:56:15 | Re : DirectDrawn et souris

Urgo

Membre Club
Regarde donc du côté de ClientToScreen, ScreenToClient...

Urgo

jeudi 25 mai 2006 à 18:03:30 | Re : DirectDrawn et souris

SnOOpss

J utilise ca

void checkinput(HWND hwnd)
{
    POINT curs;
    GetCursorPos(&curs);
    MapWindowPoints(HWND_DESKTOP, hwnd, (LPPOINT)&curs, 1);
    xj1=curs.x;
    yj1=curs.y;
 }

Mais c'est plus qu'un simple decalage, aux coordonnées (0,0) c'est bon pas de problemes mais plus on s'eloigne, plus c'est décalé.

Sinon un autre truc bizarre, j'ai desactivé la fonction pour effacer l'ecran et je m'apercoit que a chaque fois que je relance mon application elle me ressort la derniere image faite. La commande release ne fait que liberer la memoire mais c'est marrant qu'au lancement suivant tout se remette comme avant non ??


jeudi 28 février 2008 à 19:22:26 | Re : DirectDrawn et souris

ericTTT

Allo,
   Quelqu'un peut m'envoyer un exemple de code ou je peut DETECTER un
 clic (ou un double-clic) de souris avec Visual C++ 6.0 ?
Merci de votre aide
Eric



Cette discussion est classé dans : code, souris, ws, ddsd, directdrawn


Répondre à ce message

Sujets en rapport avec ce message

GroupBox transparent ?!? [ par Nebula ] Bonjour à tous,Je me refais la main sur la programmation graphique après une longue période sans pratique, et je me retrouve confronté à un bug ma foi code d'une souris en Vcpp [ par kinder ] Hi!Je recherche le code pour piloter une souris (ou un autre périphérique à la con pour en faire un "intérrupteur" on/off), branchée sur le port série DirectX pb avec la surface primaire sans le plein écran [ par Diabolus ] Salut à tous !J'ai un problème concernant le mode plein écran de Direct Draw que je veux supprimer.J'arrive enfin a créer une simple fenêtre (qui n'es Hook de la souris avec DLL (marche à moitié !? o_o ) [ par lol55 ] Bonjour à tous,Je cherche à faire un Hook Globale de la souris AVEC une Dll. Je me suis aider des nombreuses source sur CPPFrance,Voici mon code,Le co Poiteur de la souris : comment modifier ses coordonnées ? [ par eldered ] Salut ,J'ai vu un code pour la souris de TC sur ce site, qui est trés interessant d'ailleurs, mais je me pose la question suivante :Peut on modifier l création d'un éditeur graphique sous borland C++ [ par cocanash ] Mon but est de créer un logiciel de pilotage d'un système CFAO.Donc ce qui m'incombre est là partie graphique......Donc on doit charger un plan préala [debutant] erreur : Problème d'affichage [ par arwenita ] J'ai un erreur pour afficher une variable : error C2228: left of '.GetAdminPassword' must have class/struct/union typeJe ne comprends pas, ma fonc Ecriture dans un fichier [ par sebleboss2002 ] Salut tout le monde !Ce coup-ci, j'ai un problème dans l'enregistrement de type integer dans un fichier texte. Voici mon code :#include <iostream.h&g Optimiser ce code... [ par MoDDiB ] Voila je m'entraine aux prologin mais voila je depasse la vitesse maximale pr exécuté le code, j'ai cherché amélioré etc.. et j'en suis arrivé au code Aide algorithmique TESTAGE !! [ par ZogStriP ] Bonjour tout le monde !!Je suis en train de faire le concours de PROLOGIN (www.prologin.org) et j'en suis au QCM 2004 n°4, mais là je bloque un peu!Je


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Appels d'offres

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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
Temps d'éxécution de la page : 0,234 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.