Колёсико мыши и трей

Тема в разделе "WASM.BEGINNERS", создана пользователем Sl4v4, 24 окт 2005.

  1. Sl4v4

    Sl4v4 New Member

    Публикаций:
    0
    Регистрация:
    18 окт 2005
    Сообщения:
    69
    Вращаю колёсико мыши над иконкой моей программы в трее, но на окно не приходит, при этом, никаких WM_MOUSEWHEEL. Вообще никаких сообщений! В чём причина, и как быть?
     
  2. cresta

    cresta Active Member

    Публикаций:
    0
    Регистрация:
    13 июн 2004
    Сообщения:
    2.257
    Как добавлял иконку? С мессаджами?
     
  3. Sl4v4

    Sl4v4 New Member

    Публикаций:
    0
    Регистрация:
    18 окт 2005
    Сообщения:
    69
    Да.

    uCallbackMessage = 464h (WM_USER + 100)

    uFlags = 7 (NIF_MESSAGE + NIF_ICON + NIF_TIP)



    Дело в том, что программа не имеет видимого окна. Частично проблемма решается путём вызова SetForegroundWindow перед обработкой сообщений, но при этом, всё равно, пока по иконке не кликнешь, WM_MOUSEWHEEL не приходит. Может есть какой-нибудь способ автоматически установить фокус на моё окно при поступлении, например, сообщения WM_MOUSEMOVE. Оно, вроде бы, доходит.
     
  4. cresta

    cresta Active Member

    Публикаций:
    0
    Регистрация:
    13 июн 2004
    Сообщения:
    2.257
    Действительно, даже SetForegroundWindow через раз помогает... Чтобы наверняка срабатывало, надо тыкать иконку.

    Может стоит попробовать не невидимое окно, а сделать его видимым и задвинуть за край экрана?
     
  5. Sl4v4

    Sl4v4 New Member

    Публикаций:
    0
    Регистрация:
    18 окт 2005
    Сообщения:
    69
    Других вариантов пока не вижу. ...Хотя это как-то не эстетично получается...