Bonjour à tous !
Je souhaiterai créer une fenêtre en mode normal et tout ce que j'arrive à faire c'est du plein écran. J'aimerai enlever le plein écran.
J'aimerai également afficher la souris, qu'elle ne soit pas cachée.
Voici une partie de mon code :
DDraw(HINSTANCE hInstance, int nCmdShow){
//fonction initialisant les objets pour DDraw
WNDCLASS wc; //fenêtre Windows
//Création et déclaration de la classe de la fenêtre.
wc.style = CS_DBLCLKS | CS_OWNDC | CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc = WindowProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance;
wc.hIcon = LoadIcon( hInstance, IDI_APPLICATION );
wc.hCursor = LoadCursor( NULL, IDC_ARROW );
wc.hbrBackground = NULL;
wc.lpszMenuName = NAME;
wc.lpszClassName = NAME;
RegisterClass(&wc);
lpDD=NULL;
largeurFenetre=800;
hauteurFenetre=600;
bitsParPixel=16;
// Crée une fenêtre plein-écran.
hwnd = CreateWindowEx(WS_EX_TOPMOST, NAME, TITLE, WS_POPUP, 0, 0, GetSystemMetrics( SM_CXSCREEN ), GetSystemMetrics( SM_CYSCREEN ), NULL, NULL, hInstance, NULL );
ShowWindow( hwnd, nCmdShow );
UpdateWindow( hwnd );
hwndfm=hwnd;
//Création de l'objet DirectDraw;
DirectDrawCreateEx(NULL,(void**)&lpDD,IID_IDirectDraw7,NULL);
//On demande le mode exclusif (priorité au niveau de Windows)
lpDD->SetCooperativeLevel( hwnd, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN |DDSCL_ALLOWREBOOT );
//Définition du mode vidéo
lpDD->SetDisplayMode(largeurFenetre, hauteurFenetre, bitsParPixel, 0, 0);
Je pensais que c'était SetCooperativeLevel qui permettait de régler ça mais si je mets DDSCL_NORMAL ça ne me change rien, j'ai encore le plein écran et en plus ça plante. Et si j'enlève l'appel complet ça plante aussi.
Donc je ne sais pas du tout où le plein écran se fait.
Merci