Уведомления

Группа в Telegram: @pythonsu

#1 Июль 19, 2019 14:14:02

arch77
Зарегистрирован: 2019-07-19
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Как прикрепить pyautogui события к pyvirtualdisplay?

В примере моего кода pyautogui события всегда срабатывают на верхнем дисплее.
Возможно ли иметь управление pyautogui на каждом дисплее?

 import os
from pyvirtualdisplay import Display
import Xlib.display
# ...
# функция запускается в многопоточном режиме
def do_work(data):
    v_display = Display(visible=0, size=(900, 600))
    v_display.start()
    import pyautogui
    print(v_display)
    pyautogui._pyautogui_x11._display = Xlib.display.Display(os.environ['DISPLAY'])
    print(pyautogui._pyautogui_x11._display)
    pyautogui.click(x=880, y=580)
    # Клик всегда проходит по верхнему дисплею
    v_display.stop()

Output:
 <Display cmd_param=['Xvfb', '-br', '-nolisten', 'tcp', '-screen', '0', '900x600x24', ':1086'] cmd=['Xvfb', '-br', '-nolisten', 'tcp', '-screen', '0', '900x600x24', ':1086'] oserror=None return_code=None stdout="None" stderr="None" timeout_happened=False>
<Display cmd_param=['Xvfb', '-br', '-nolisten', 'tcp', '-screen', '0', '900x600x24', ':1087'] cmd=['Xvfb', '-br', '-nolisten', 'tcp', '-screen', '0', '900x600x24', ':1087'] oserror=None return_code=None stdout="None" stderr="None" timeout_happened=False>
<Xlib.display.Display object at 0x7f4f5493aa90>
<Xlib.display.Display object at 0x7f4f5493a8d0>

Отредактировано arch77 (Июль 20, 2019 23:42:08)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version