Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

как вызвать эффект мигания окна - как это делает Spy++

7.0K
24 мая 2005 года
mixell
28 / / 03.04.2005
подскажите пожалуйста как сделать эффект
мигания нужного дескриптора окна -
как это делает SPY++ при нажатии кнопки
Highlight - ведь функция FlashWindow -
не делает такого эффекта !!!
488
24 мая 2005 года
Mоngооsе
465 / / 01.04.2005
ф-ия FlashWindowEx()
7.0K
26 мая 2005 года
mixell
28 / / 03.04.2005
Цитата:
Originally posted by Mоngооsе
ф-ия FlashWindowEx()



такой же эффект - обсалютно - SPY++ делает
как-то по другому - а так не работает -

FLASHWINFO FI;
FI.cbSize = sizeof(FI);
FI.hwnd = wnd;
FI.dwFlags = FLASHW_ALL;
FI.uCount = 5;
FI.dwTimeout = 500;
FlashWindowEx(&FI);

10K
01 июня 2005 года
gensik
9 / / 03.05.2005
Цитата:
Originally posted by mixell
подскажите пожалуйста как сделать эффект
мигания нужного дескриптора окна -
как это делает SPY++ при нажатии кнопки
Highlight - ведь функция FlashWindow -
не делает такого эффекта !!!



Правильно. FlashWindow не подходит. SPY++ использует DrawFocusRect:
///////////
CWnd* winPtr = NULL;
winPtr = this->FindWindow( "MSBLClass", "Windows Messenger");
CRect rect;
winPtr->GetWindowRect( &rect);
rect.right -= rect.left;
rect.bottom -= rect.top;
rect.top = 0;
rect.left = 0;
CDC* pdc;
pdc = winPtr->GetWindowDC();
pdc->DrawFocusRect( &rect);
rect.DeflateRect( 1, 1);
pdc->winPtr( &rect);
rect.DeflateRect( 1, 1);
pdc->DrawFocusRect( &rect);
///////////
Первый пуск рисует FocusRect в 3 пикс в границах окна, а второй - стирает FocusRect. Пусти эту парочку по таймеру и будет эффект SPY++. Можно поиграться с цветами:
/////
CBrush brush1;
brush1.CreateSolidBrush(RGB(255,0,0)); // Red brush.
pdc->FrameRect( &rect, &brush1);
//////
FrameRect вместо DrawFocusRect, но тогда нужно его перерисовывать, или дать фокус окну, чтобы он исчез.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог