Как сделать окно, которое будет располагаться поверх всех, будет прозрачным и будет пропускать сквозь себя все сообщения (мыши, клавиатуры), но сначала анализировать их.
Здравствуйте, Аноним, Вы писали:
А>Как сделать окно, которое будет располагаться поверх всех, будет прозрачным и будет пропускать сквозь себя все сообщения (мыши, клавиатуры), но сначала анализировать их.
Здравствуйте, kero, Вы писали:
K>Здравствуйте, Аноним, Вы писали:
А>>Как сделать окно, которое будет располагаться поверх всех, будет прозрачным и будет пропускать сквозь себя все сообщения (мыши, клавиатуры), но сначала анализировать их.
K>http://rsdn.ru/search/, 100500
А что искать-то, по какой фразе, я ничего толком не нашёл?
Здравствуйте, Аноним, Вы писали:
А>>>Как сделать окно, которое будет располагаться поверх всех, будет прозрачным и будет пропускать сквозь себя все сообщения (мыши, клавиатуры), но сначала анализировать их.
K>>http://rsdn.ru/search/, 100500
А>А что искать-то, по какой фразе, я ничего толком не нашёл?
Ну, хоть *transparent, в разных смыслах (наткнетесь, к примеру, на комбинацию WS_EX_LAYRED|WS_EX_TRANSPARENT),
а уж обсуждений логически противоречивого "поверх всех" и не сосчитать.
Здравствуйте, Аноним, Вы писали:
А>Как сделать окно, которое будет располагаться поверх всех, будет прозрачным и будет пропускать сквозь себя все сообщения (мыши, клавиатуры), но сначала анализировать их.
Здравствуйте, Аноним, Вы писали:
А>Как сделать окно, которое будет располагаться поверх всех, будет прозрачным и будет пропускать сквозь себя все сообщения (мыши, клавиатуры), но сначала анализировать их.
Можно попробовать через WM_NCHITTEST, тогда можно и анализ делать и "прозрачность" через возвращение нужного значения сделать. Про последнее не уверен.
В случае со стилем WS_EX_TRANSPARENT сообщения прилетать не будут и действительно придётся ловить их через хук.
Можно ещё так же через GetWidnow(...) перебрать все окна за своим и проверить через PtInRect попадает мыша в него или нет, и перенаправить сообщение в него.
Здравствуйте, Аноним, Вы писали:
А>Как сделать окно, которое будет располагаться поверх всех, будет прозрачным и будет пропускать сквозь себя все сообщения (мыши, клавиатуры), но сначала анализировать их.
А зачем тебе окно? rus blood правильно написал. Достаточн опоставить хук в очередь. Любые действия передаются по цепочку хуков. Вы сможете обработать событие и передать его дальше программе или окну, которому событие предназначалось.