Re[2]: Windows 7 Aero - Application Caption bug
От: wraith1985 Беларусь  
Дата: 30.04.11 14:52
Оценка:
Здравствуйте, о_О, Вы писали:

о_О>Здравствуйте, wraith1985, Вы писали:


W>>Как только юзер переключается в полноэкранный режим и обратно в оконный,

W>>с заголовком приложения происходит следующее
о_О>в программе или поиграть садится? если в программе, то как реализован полноэкранный режим?

Всё происходит в программе.
В реализации, по моему, ничего особенного.


void Application::Initiate()
{
    ...
    m_styleW = WS_POPUP|WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX|WS_VISIBLE;
    m_styleFS = WS_POPUP|WS_VISIBLE;
    ...
}

void Application::AdjustWindow()
{
    RECT *rc;
    LONG style;

    if (bWindowed)
    {
        rc = &m_rectW;
        style = m_styleW;
    }
    else
    {
        rc = &m_rectFS;
        style = styleFS;
    }

    SetWindowLong(hwnd, GWL_STYLE, style);

    style = GetWindowLong(hwnd, GWL_EXSTYLE);
    if (bWindowed)
    {
        SetWindowLong(hwnd, GWL_EXSTYLE, style & (~WS_EX_TOPMOST));
        SetWindowPos(hwnd, HWND_NOTOPMOST, rc->left, rc->top, rc->right-rc->left, rc->bottom-rc->top, SWP_FRAMECHANGED);
    }
    else
    {
        SetWindowLong(hwnd, GWL_EXSTYLE, style | WS_EX_TOPMOST);
        SetWindowPos(hwnd, HWND_TOPMOST, rc->left, rc->top, rc->right-rc->left, rc->bottom-rc->top, SWP_FRAMECHANGED);
    }
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.