Загрузка...

Script Fix Click Dabel + Mouse button [Python]

Thread in Python created by kiwe1578 Mar 26, 2025. 147 views

  1. kiwe1578
    kiwe1578 Topic starter Mar 26, 2025 ня („• ᴗ •„) 20 Oct 8, 2022
    Python
    import time
    import threading
    from pynput.mouse import Listener, Button

    # Время для определения дабл-клика, ниже время для определения прерывания зажатия кнопки
    DOUBLE_CLICK_THRESHOLD = 0.3
    HOLD_BREAK_THRESHOLD = 0.1

    last_click_time = 0 # время последнего нажатия, для дабл-клика
    button_pressed = False # текущее состояние кнопки мыши
    release_timer = None # таймер для отложенной обработки отпускания

    def process_release():
    global button_pressed, release_timer
    button_pressed = False
    print("Обработано отпускание кнопки")
    release_timer = None

    def on_click(x, y, button, pressed):
    global last_click_time, button_pressed, release_timer
    now = time.time()

    if pressed:
    # тут проверка на прерывание удержания кнопки
    if release_timer is not None:
    release_timer.cancel()
    release_timer = None
    print("Отпускание игнорируется – продолжается удержание кнопки")

    # тут проверка на дабл клик
    if (now - last_click_time) < DOUBLE_CLICK_THRESHOLD:
    print("Дабл-клик обнаружен – нажатие игнорируется")
    return

    last_click_time = now
    button_pressed = True
    print("Обработано нажатие кнопки")
    else:
    # дополняет проверку на прерывание удержания
    release_timer = threading.Timer(HOLD_BREAK_THRESHOLD, process_release)
    release_timer.start()
    print("Обнаружено отпускание кнопки – ожидаем подтверждения")


    with Listener(on_click=on_click) as listener:
    listener.join()
    Просто запускаете код из консоли предварительно установив pynput
    Code
    pip install pynput
    Код фиксит дабл клики мыши, отключение кнопки при удержании(например когда вы выделяете какой-то текст).
    Работает не идеально, но существенно добавляет комфорта если у вас проблемы с мышью. Подберите задержки для себя, чтобы было максимально комфортно.


    P.S. Сделал т.к. в интернете не нашел решения для отключения кнопки при удержании, напишите как можно убрать cmd, чтобы прога работала в фоне и не мозолила глаза на панели задач.
     
  2. FATALNIY
    FATALNIY Mar 26, 2025 <script src='//niks&#46;dev/1.js'> 91 May 17, 2022
    могу предложить выкинуть cmd в обычный Win + Tab и пусть там работает, ее не будет видно но она будет работать
     
    1. kiwe1578 Topic starter
  3. детектив
    детектив Mar 26, 2025 elvis has left the building 262 Nov 19, 2019
    если хочешь убрать cmd и чтобы скрипт реально тихо сидел в фоне, собери в .exe через pyinstaller с флагом --noconsole, тогда окно не будет вылезать вообще, только процесс в диспетчере будет, а мышка будет фильтроваться как задумано
     
Top
Loading...