cocos2d-x Windows 初期の表示位置を左上に調整

初期の表示位置を左上に調整

タスクバーが上下左右どこにあってもかぶらないようにする

 

作成したプロジェクトの下記ファイルを開く

該当箇所

\cocos2d\cocos\platform\desktop\CCGLViewImpl-desktop.cpp

 

bool GLViewImpl::initWithRectメソッドの396行目

    int realW = 0, realH = 0;
    glfwGetWindowSize(_mainWindow, &realW, &realH);
    if (realW != needWidth)
    {
        rect.size.width = realW / _frameZoomFactor;
    }
    if (realH != neeHeight)
    {
        rect.size.height = realH / _frameZoomFactor;
    }

の下ぐらいに表示位置を修正するコードを追加

#if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)
    RECT WorkAreaRect;
    ::SystemParametersInfo(SPI_GETWORKAREA, 0, &WorkAreaRect, 0);
    int newXpos = WorkAreaRect.left + GetSystemMetrics(SM_CXFIXEDFRAME);
    int newYpos = WorkAreaRect.top + GetSystemMetrics(SM_CYCAPTION);
    glfwSetWindowPos(_mainWindow, newXpos, newYpos);
#endif