begin process at 2012 05 29 02:41:39
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

DirectX

 > 

dialogbox et ddraw


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

dialogbox et ddraw

jeudi 16 août 2007 à 11:54:03 | dialogbox et ddraw

lahache

bonjour, j'ai commencé un petit programme utilisant directdraw en mode exclusive, fullscreen, mais je voudrai beneficié des facilitées offertes par les dialogboxs. probleme, lorsque je crée une dialogbox dans le programme, celle ci ne s'affiche q'une fois sur deux. le reste du temps, elle est en background. je pense que cela est du au Zorder de la fenetre, mais je n'arrive pas a le modifié, ni par SetForegroundWindow(), ni par SetWindowPos(). (la dialogbox créé est system modal, visible, et set foreground) est il possible d'utilisé les dialogbox dans ces conditions , et comment ? merci, marc
jeudi 16 août 2007 à 21:15:39 | Re : dialogbox et ddraw

yann_lo_san

Salut,
en gros, il ne faut pas etre en mode exclusive puis il faut un clipper et ne pas flipper la surface pour le rendu.

hDlg = le dialog 
lpDD = est l'objet directDraw
primarySurface et backSurface ne change pas.

LPDIRECTDRAWCLIPPER lpClipper = NULL;

lpDD->SetCooperativeLevel( hDlg, DDSCL_NORMAL );

lpDD->CreateClipper( 0, &lpClipper, NULL );
lpClipper->SetHWnd( 0, hDlg );
lpDDPrimarySurface->SetClipper( lpClipper );

Il faut blitter la backSurface  sur la primary:

RECT rcRectDest, rcRectSrc;
POINt p={0,0};
ClientToScreen(hDlg, &p);
GetClientRect(hDlg, &rcRectDest);
OffsetRect(&rcRectDest, p.x, p.y);
SetRect(&rcRectSrc, 0, 0, 640, 480);
lpDDPrimarySurface->Blt(&rcRectDest, lpDDBackSurface, 
                                       &rcRectSrc, DDBLT_WAIT, NULL);


Cette discussion est classée dans : programme, ddraw, dialogbox


Répondre à ce message

Sujets en rapport avec ce message

DialogBox qui ne s'affiche que sur mon PC [ par CyberP ] J'ai créé un programme dont l'interface est uniquement composée d'une dialogbox. Mais quand je donne le programme à quelqu'un d'autre sur le net (je n Popup dans un popup [ par CyberP ] J'ai créé un programme dont la seule fenêtre est une DialogBox. J'ai rajouté une autre DialogBox pour le "A propos de" mais celle-ci ne s'affiche pas faire apparaitre une image [ par supergrey ] Salut, j'ai fait un programme avec une dialogbox qui contient une image, et je voudrai qu'on puisse faire disparaitre cette image (mais pas le reste) Gestion de la mémoire ! [ par ZogStriP ] Je voudrais savoir si il existe un programme ou une fonction (qui marche sous windows XP) qui me permettrais de savoir exactement combien d'espace pre Question DLL [ par LordBob ] Bonjours a tous,en fait je voudrais juste savoir s'il été possible d'utiliser une DLL aussi bien avec un programme fonctionnant en mode console qu'un analyseur d'expression [ par loicus ] Voila, je cherche une fonction, qui pourrait transformer une expression (suite de char) en une ligne de code qui sera utiliser par le programmeex : ma Prog d'installation [ par sitesref ] Voilà je m'adresse à celles et ceux d'entre vous qui veulent distribuer leur création (y'en a sûrement plein).Je mets au point depuis plus d'un an un Graphisme pour débutant en C avec VB 6.0 [ par Ben0007 ] Hello,J'ai écrit un petit programme en C pour faire évoluer une proie et un prédateur sur un grand échiquier (du moins au début je me contente de ça), Envoyer une touche [ par frzburn ] Je veux me faire un petit programme pour activer des cheats dans Vice City. Mais je ne veux pas modifier des trucs dans la mémoire, je veux utiliser lire les touches en background [ par frzburn ] J'ai finallement réussi à faire un programme, en c, qui entre les cheats codes pour GTA Vice City. Par exemple, si je pèse sur k, il fait le code LEAV


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 : 0,468 sec (3)

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