C++ Как сделать hold вместо toggle? c++

Начинающий
Статус
Оффлайн
Регистрация
16 Авг 2021
Сообщения
22
Реакции[?]
0
Поинты[?]
0
C++:
#include <iostream>
#include <Windows.h>

// Set default state to false
bool bState{ false };

void menu(bool bState)
{
    // Clears and prints to the console
    system("cls");

    std::cout << "AutoClicker v1.0\n";

    if (bState)
    {
        std::cout << "Status: ON\n";
    }
    else
    {
        std::cout << "Status: OFF\n";
    }
}

int main()
{
    menu(bState);
    while (true)
    {
        // Check if 'X' is pressed
        if (GetAsyncKeyState(0x05) & 1)
        {
            // Switch bState value
            bState = !bState;
            // Print menu to console
            menu(bState);
        }

        if (bState)
        {
            // Simulate mouse click
            mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
            mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
        }
        Sleep(0);
    }
}
 
Последнее редактирование модератором:
Забаненный
Статус
Оффлайн
Регистрация
2 Мар 2021
Сообщения
1,083
Реакции[?]
406
Поинты[?]
1K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Что именно тебе hold?
 
Забаненный
Статус
Оффлайн
Регистрация
2 Мар 2021
Сообщения
1,083
Реакции[?]
406
Поинты[?]
1K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
ну мне надо чтоб я сам зажимал баковую клавишу, а не 1 раз нажал и он сам кликает.
GetAsyncKeyState - Зажать клавишу для действия
GetKeyState - Нажать клавишу для действия

GetAsyncKeyState & 1 - зажать 1 раз для действия

Итог: Убери & 1
 
Пользователь
Статус
Оффлайн
Регистрация
17 Июл 2021
Сообщения
462
Реакции[?]
118
Поинты[?]
10K
Забаненный
Статус
Оффлайн
Регистрация
2 Мар 2021
Сообщения
1,083
Реакции[?]
406
Поинты[?]
1K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Не легче вообще
C++:
while (GetAsyncKeyState(***))
{
//код
}
 
Олдфаг
Статус
Оффлайн
Регистрация
18 Фев 2019
Сообщения
2,826
Реакции[?]
1,853
Поинты[?]
24K
C++:
#include <iostream>
#include <Windows.h>
#include <thread>

bool bState{ false };

void MainThread(HANDLE hCon, COORD cPos) {
    while (true)
    {
        if (GetAsyncKeyState(0x05))
        {
            if (!bState) {
                SetConsoleCursorPosition(hCon, cPos);;
                std::cout << "ON ";
                bState = true;
            }
            // Ваши действия
        }
        else if (bState)
        {
            SetConsoleCursorPosition(hCon, cPos);
            std::cout << "OFF";
            bState = false;
        }
        Sleep(0);
    }
}

int main()
{
    std::cout << "AutoClicker v1.0\n";
    std::cout << "Status: OFF";

    HANDLE hCon;
    COORD cPos;
    hCon = GetStdHandle(STD_OUTPUT_HANDLE);
    cPos.Y = 1;
    cPos.X = 8;

    std::thread t(MainThread, hCon, cPos);
    t.join();
}
 
Начинающий
Статус
Оффлайн
Регистрация
16 Авг 2021
Сообщения
22
Реакции[?]
0
Поинты[?]
0
C++:
#include <iostream>
#include <Windows.h>
#include <thread>

bool bState{ false };

void MainThread(HANDLE hCon, COORD cPos) {
    while (true)
    {
        if (GetAsyncKeyState(0x05))
        {
            if (!bState) {
                SetConsoleCursorPosition(hCon, cPos);;
                std::cout << "ON ";
                bState = true;
            }
            // Ваши действия
        }
        else if (bState)
        {
            SetConsoleCursorPosition(hCon, cPos);
            std::cout << "OFF";
            bState = false;
        }
        Sleep(0);
    }
}

int main()
{
    std::cout << "AutoClicker v1.0\n";
    std::cout << "Status: OFF";

    HANDLE hCon;
    COORD cPos;
    hCon = GetStdHandle(STD_OUTPUT_HANDLE);
    cPos.Y = 1;
    cPos.X = 8;

    std::thread t(MainThread, hCon, cPos);
    t.join();
}
Почему кликер не работает? только в cmd меняется off / on
 
Олдфаг
Статус
Оффлайн
Регистрация
18 Фев 2019
Сообщения
2,826
Реакции[?]
1,853
Поинты[?]
24K
Почему кликер не работает? только в cmd меняется off / on
C++:
// Ваши действия
Замените на код автокликера.
Кстати говоря, Ваш код совершенно неправильный и данный автокликер будет легко обнаружаться.
 
Сверху Снизу