C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 211 - Таскаем форму за любое место / MFC шаг за шагом / Visual C++

Шаг 211 - Таскаем форму за любое место

 
----- Original Message ----- 
From: SLY 
To: kaev@yandex.ru
Sent: Friday, July 28, 2000 7:21 PM
Subject: MFCByStep

Привет!
Вот еще одна хитрость как обмануть Windows - перетаскивание окна 
за форму при нажатии на левую кнопку mouse.

Вот история такая. Я тут два дня убил на тестирование :-) Пытался понять в чем прикол. Ведь она и левой кнопкой такскается сама по себе. Поэтому я таскал правой. Вся радость в том, что окно таскается только за заголовок, а в данном примере за любое место формы :-) Будьте внимательны. Создайте AppWizard приложение и посмотрите. Схватите мышкой в середине формы. Ни куда она не потянется :-). А вот, чтобы она передвигалась надо перегрузить сорбытие нажатия левой кнопки мыши через Add Windows Message Handle и написать такой код.

void CMoveWindowDlg::OnLButtonDown(UINT nFlags, CPoint point) 
{
 CDialog::OnLButtonDown(nFlags, point);
 ReleaseCapture();
 ::SendMessage(AfxGetApp()->m_pMainWnd->GetSafeHwnd(),
	WM_SYSCOMMAND, SC_MOVE | HTCAPTION, 0);
}

Идея вообщем такая. Надо перенаправить сообщение передвижения мышью SC_MOVE туда кто умеет его обрабатывать HTCAPTION.

Материалы для шага прислал SLY (sly@vmz.nnov.ru).


Загрузить проект | | |
Автор Каев Артем.
[AD]