Как создать нематериальное окно?
От: sparner  
Дата: 26.11.05 11:12
Оценка: :))
Возможно ли и как создать окно сообщения которого передаються окнам под ним...
желательно избирательно.Т.е. как узнать какое окно находится под моим в данной точке и передать ему сообщение(при кликах мышки) и при этом оно должно находиться поверх остальных окон...

В общем кто понял суть вопроса помогите Plz...
Re: Как создать нематериальное окно?
От: Slava Antonov Россия http://deadbeef.narod.ru
Дата: 26.11.05 12:29
Оценка:
Hello sparner, you wrote:

> Возможно ли и как создать окно сообщения которого передаються окнам под ним...


layered window + WS_EX_TRANSPARENT.

> желательно избирательно.Т.е. как узнать какое окно находится под моим в данной точке и передать ему сообщение (при кликах мышки)


Тут отказываемся от layered window + WS_EX_TRANSPARENT и все делаем руками. Перебирайте видимые окна, проверяйте координаты, проверяйте z-order и пересылайте сообщение куда нужно.

--
Всего хорошего, Слава
ICQ: 197577902
Posted via RSDN NNTP Server 1.9
Re[2]: Как создать нематериальное окно?
От: Pavel Dvorkin Россия  
Дата: 28.11.05 07:46
Оценка:
Здравствуйте, Slava Antonov, Вы писали:

SA>Тут отказываемся от layered window + WS_EX_TRANSPARENT и все делаем руками. Перебирайте видимые окна, проверяйте координаты, проверяйте z-order и пересылайте сообщение куда нужно.


Проверять z-order не надо. См.GetNextWindow.
With best regards
Pavel Dvorkin
Re[3]: Как создать нематериальное окно?
От: Slava Antonov Россия http://deadbeef.narod.ru
Дата: 28.11.05 09:56
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

SA>>Тут отказываемся от layered window + WS_EX_TRANSPARENT и все делаем руками. Перебирайте видимые окна, проверяйте координаты, проверяйте z-order и пересылайте сообщение куда нужно.


PD>Проверять z-order не надо. См.GetNextWindow.


GetNextWindow как раз и реализует нам проверку Z-ordera

Хм... тогда делаем так: начинаем с нашего окна. И далее в цикле GetNextWindow + GW_HWNDPREV до тех пор пока не уткнемся в нужное окно.
Re[4]: Как создать нематериальное окно?
От: Pavel Dvorkin Россия  
Дата: 29.11.05 03:47
Оценка:
Здравствуйте, Slava Antonov, Вы писали:


SA>GetNextWindow как раз и реализует нам проверку Z-ordera


Именно. я это и имел в виду, говоря, что самим это делать не надо.

SA>Хм... тогда делаем так: начинаем с нашего окна. И далее в цикле GetNextWindow + GW_HWNDPREV до тех пор пока не уткнемся в нужное окно.


Да. Пока не будет PtInRect для GetWindowRect RECT этого окна.
With best regards
Pavel Dvorkin
Re: окно?
От: c-smile Канада http://terrainformatica.com
Дата: 29.11.05 04:56
Оценка:
Здравствуйте, sparner, Вы писали:

S>Возможно ли и как создать окно сообщения которого передаються окнам под ним...

S>желательно избирательно.Т.е. как узнать какое окно находится под моим в данной точке и передать ему сообщение(при кликах мышки) и при этом оно должно находиться поверх остальных окон...


Окно тебе не нужно.
См. на SetWindowHook(Ex) (WH_MOUSE, ...)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.