Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Делаю стиль Vista для Windows 95, Нужно сделать окна с прозрачным NCArea 
V
    Опции темы
serg405
Дата 10.6.2009, 15:49 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 12.6.2008

Репутация: нет
Всего: нет



Код

CRect rc;
GetWindowRect(&rc);

CDC* pDesk = GetDesktopWindow()->GetDC();
cdWinDC->BitBlt(crCaptionRect.left, crCaptionRect.top, crCaptionRect.Width(), crCaptionRect.Height(), pDesk, rc.left, rc.top, SRCCOPY);
GetDesktopWindow()->ReleaseDC(pDesk);


Таким образом имитирю прозрачность, но проблема в том что на рабочем столе нарисовано окно уже с рамкой и рамка просто перерисовываеться в новый битмап. Как вытащить рисунок из под окна? На некоторых форумах говорят об использовании
 
Код

GetWindowLong() и SetLayeredWindowAttributes()


Подскажыте, если можно с пирмером, как правильно их использовать для моих целей.

Добавлено через 5 минут и 43 секунды
видимо я поспешыл с вопросом решение нашлось и в googl.

в OnInitDialog надо прописать 

Код

SetWindowLong(m_hWnd, GWL_EXSTYLE, GetWindowLong(m_hWnd, GWL_EXSTYLE) | WS_EX_LAYERED);
SetLayeredWindowAttributes(0, 255, LWA_ALPHA);

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0637 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.