mouse_event без MOUSEEVENTF_ABSOLUTE

Тема в разделе "WASM.WIN32", создана пользователем spa, 11 май 2009.

  1. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    При использовании флага MOUSEEVENTF_ABSOLUTE все ясно: есть 65535 на 65535 поле, собственно в любую точку которого мы можем переместиться. А по какому алгоритму передвигаеться мышь при отсутствии флага MOUSEEVENTF_ABSOLUTE. ВО-первых что я заметил что тогда у курсора появляеться разгон. В msdn сказанно про SystemParametersInfo но также не обьесненно что да как. Те задача по сути такая используя mouse_event без MOUSEEVENTF_ABSOLUTE передвинуть курсор на какуенибуть относительную величину, будь то витуальное поле (65535 на 65535), буть то размер экрана.
     
  2. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    Провел небольшой эсперемент
    Код (Text):
    1.     POINT t;
    2.     SetCursorPos(0,0);
    3.     mouse_event(MOUSEEVENTF_MOVE, 100, 100, 0, GetMessageExtraInfo());
    4.     GetCursorPos(&t);
    5.     cout << t.x << ' ' << t.y   << '\n';
    6.     SetCursorPos(0,0);
    7.     for(int i=0;i<100;i++)
    8.             mouse_event(MOUSEEVENTF_MOVE, 1, 1, 0, GetMessageExtraInfo());
    9.     GetCursorPos(&t);
    10.     cout << t.x << ' ' << t.y   << '\n';
    получаем
    191 192
    56 60
     
  3. mrcrown

    mrcrown Member

    Публикаций:
    0
    Регистрация:
    18 янв 2008
    Сообщения:
    227
    Вы прочитали монолог "SPA"
     
  4. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    mrcrown
    вообще я жду ответа на свой вопрос...
     
  5. VoidVolker

    VoidVolker New Member

    Публикаций:
    0
    Регистрация:
    22 янв 2010
    Сообщения:
    2
    Читать MSDN надо внимательнее:
    Без этого флага производится перемещение курсора относительно текущих координат - т.е. переданные x y прибавляются к текущим координатам курсора, при этом указывается число пикселей.
     
  6. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    VoidVolker
    спасибо, но вы еще тот некромант я посмотрю :derisive:
     
  7. VoidVolker

    VoidVolker New Member

    Публикаций:
    0
    Регистрация:
    22 янв 2010
    Сообщения:
    2
    Да ладно, не такая уж и старая тема - всего-то месяц. А вообще, в меня линком кинули просто :)