Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Нелогичная работа mouse_event MOUSEEVENTF_MOVE - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как изменить имя контакта при посылке смс через usb-модем? http://www.cyberforum.ru/cpp/thread1363510.html
Доброе утро! Не знаю, верно ли выбрал раздел, но т.к. писать буду на C++, решил сюда. Есть задача: организовать рассылку смс. Никогда ранее таким не занимался. Первое что пришло в голову - купить...
C++ Boost + Cmake + Clion Помогите мне подключить Boost к Clion на Windows. Перепробовал уже кучу вариантов - ничего не выходит, заголовки только инклудятся, а библиотеки походу не подключаются. Вот мой пример... http://www.cyberforum.ru/cpp/thread1362663.html
C++ Коды, приводящие к неожиданным результатам
Код помещения кортежа в стрим. Компилируется. По счастливому случаю обнаружил автоматическую ошибку до тестирования. Кто скажет, почему следующий блок работал бы не так как ожидалось? ...
Куда двигаться в с++ или становление программистом C++
Всем привет. Немного о себе: закончил колледж, учусь дальше в универе на программиста специальность ПОИТ. Вообщем вопрос у меня такой, очень хочу развиваться дальше в сторону с++, после всего...
C++ Создание 2d движка http://www.cyberforum.ru/cpp/thread1356009.html
Здравствуйте, я начинающий программист c++, но знаю другие языки да и c++ уже не плохо. В общем загорелся идеей создать простейший 2d движок. Без звука, простейший,чтобы создавалось окно, загружалась...
C++ Формальная постановка для игры крестики и нолики Доброго времени суток. Написал игру крестики и нолики размерностью 4х4. Нужно написать к этой игре формалку, а я понятия даже не имею о том как ее написать. Буду рад если поможете) подробнее

Показать сообщение отдельно
DarkPower
0 / 0 / 0
Регистрация: 20.03.2013
Сообщений: 80
29.01.2015, 11:51  [ТС]
Извинете, забыл удалить. Но это ничего не меняет...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
void Draw()
{
    HDC hdc = GetDC(HWND_DESKTOP);
    int cx = GetSystemMetrics(SM_CXSCREEN);
    int cy = GetSystemMetrics(SM_CYSCREEN);
    int x = RandomMinMax(1,cx);
    int y = RandomMinMax(1,cy);
    int size = 5;
    POINT p;
    GetCursorPos(&p);
    for(int i =0;i<50;i++) std::cout << "\n";
    
    int fx,fy;
    fx = x-p.x; fy = y-p.y;
    std::cout << "\nПозиция курсора = " << p.x;
    std::cout << "\nПозиция точки = " << x;
    mouse_event(MOUSEEVENTF_MOVE, fx,fy, 0, 0);
    GetCursorPos(&p);
    std::cout << "\nПозиция курсора = " << p.x;
    for(int i = 0-size; i<size; i++)
    {
        for(int j=0-size; j<size;j++)
        {
            SetPixel(hdc,x-i,y-j,RGB(RandomMinMax(180,255),0,0));
        }
    }
}
Все равно двигает курсор в рандомную позицию

Добавлено через 31 минуту
Если написать так то:
C++
1
2
3
4
5
6
        std::cout << "\nCur = " << p.x;
    std::cout << "\nP = " << x;
        
    mouse_event(MOUSEEVENTF_MOVE, -100,0, 0, 0);
    GetCursorPos(&p);
    std::cout << "\nCur = " << p.x;
Курсор сдвигается не на 100, а на 100-200.

Если двигать по 10:
C++
1
2
3
4
5
6
        std::cout << "\nCur = " << p.x;
    std::cout << "\nP = " << x;
        
    mouse_event(MOUSEEVENTF_MOVE, -10,0, 0, 0);
    GetCursorPos(&p);
    std::cout << "\nCur = " << p.x;
Курсор сдвигается не на 11.

Добавлено через 7 минут
Если сдвинуть 10 раз по 10, то примерно сдвигает на 100 (ну хоть не 200-300 как в mouse_event(MOUSEEVENTF_MOVE, -100,0, 0, 0);)
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru