Maustoggle an den Ecken



  • Hey!

    Meine Maus...

    wndClass.hCursor = LoadCursorFromFile("mainCursor.cur");
    

    ´

    ...wird an den oberen Ecken nicht angezeigt. An der linken unteren Ecke passiert nichts, rechts glaube ich auch nicht. Radius etwa 3 Pixel, wo plötzlich zum Windows-Standardmauszeiger gewechselt wird.
    Was könnte die Ursache sein?

    Es wird gezeichnet:

    D3DFORMAT direct3DFormat = D3DFMT_X8R8G8B8;
    
        direct3DPresentParameters.Windowed                = false;
    	direct3DPresentParameters.hDeviceWindow           = hWnd;
        direct3DPresentParameters.SwapEffect              = D3DSWAPEFFECT_DISCARD;
    	direct3DPresentParameters.PresentationInterval    = D3DPRESENT_INTERVAL_IMMEDIATE;
        direct3DPresentParameters.EnableAutoDepthStencil  = true;
        direct3DPresentParameters.AutoDepthStencilFormat  = D3DFMT_D16;
        direct3DPresentParameters.BackBufferFormat        = direct3DFormat;
        direct3DPresentParameters.BackBufferWidth         = GetSystemMetrics(SM_CXSCREEN);
    	direct3DPresentParameters.BackBufferHeight        = GetSystemMetrics(SM_CYSCREEN);
    
    	direct3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_HARDWARE_VERTEXPROCESSING, &direct3DPresentParameters, &direct3DDevice);
    
    	direct3DDevice->SetRenderState(D3DRS_CULLMODE, D3DCULL_CCW);
    	direct3DDevice->SetRenderState(D3DRS_LIGHTING, false);
    	direct3DDevice->SetRenderState(D3DRS_ZENABLE, true);
    
    	D3DXMATRIX projectionMatrix;
    	D3DXMatrixPerspectiveFovLH(&projectionMatrix, D3DX_PI * 0.25f, 1.0f, 1.0f, 1000.0f);
    	direct3DDevice->SetTransform(D3DTS_PROJECTION, &projectionMatrix);
    
    direct3DDevice->Clear(0, NULL, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER, D3DCOLOR_XRGB(255, 255, 255), 1.0f, 0);
    		direct3DDevice->BeginScene();
    
    		direct3DDevice->EndScene();
    		direct3DDevice->Present(NULL, NULL, NULL, NULL);
    

    MfG



  • Dein Window-Style könnte der Grund sein.



  • WNDCLASS wndClass;
    	memset(&wndClass, 0, sizeof(wndClass));
    
        wndClass.lpfnWndProc    = MsgProc;
        wndClass.hInstance      = hInstance;
        wndClass.hCursor        = LoadCursorFromFile("mainCursor.cur");
        wndClass.lpszClassName  = "Main";
    
    	RegisterClass(&wndClass);
    

    Style, background usw. setzen habe ich schon probiert. Hilft alles nix.

    MfG



  • Mit WS_POPUP bei CreateWindow passiert es nicht mehr. Gibt es noch andere styles, bei denen das nicht auftritt und die vielleicht "besser" sind als WS_POPUP?

    MfG


Anmelden zum Antworten