如何加载一个png图片为鼠标?

解决方案 »

  1.   

    png不能直接作为鼠标,
    需要用库转化为鼠标文件。
      

  2.   


    不需要啊,在WM_SETCURSOR消息中绘制就行了。
      

  3.   


    你的意思是说,在每次WM_SETCURSOR响应的时候,直接把PNG图片画到窗口当前鼠标的位置上?
    如果是的话,那么怎么清除之前画的呢??这样会不会影响速度啊????
      

  4.   

    刚想了一下,按照四楼的意思
    如果真的是画上去的话,是不是放一个CStatic上去,然后按照鼠标位置移动它,接着重画它上面的图形呢???
      

  5.   

    他的意思也就是说就改变了一下鼠标的形状。其他的还是按照原来鼠标的操作。
    你先加在一个图片资源,然后调用
    SetCursor()HCURSOR SetCursor(
      HCURSOR hCursor   // handle to cursor
    );
    The SetCursor function sets the cursor shape. 
      

  6.   

    HCURSOR CreateCursor(          HINSTANCE hInst,
        int xHotSpot,
        int yHotSpot,
        int nWidth,
        int nHeight,
        const VOID *pvANDPlane,
        const VOID *pvXORPlane
    );
      

  7.   

    问题在于cursor只支持透明色,不支持alpha通道,所以png是不合适的