ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Общие вопросы программирования (https://forum.antichat.xyz/forumdisplay.php?f=206)
-   -   Помощь с Tkinter. (https://forum.antichat.xyz/showthread.php?t=1492748)

Shelok_Kholmes 24.10.2023 15:13

С помощью этой функции сделал регистрацию нажатия:







Python:





Код:

root
.
bind
(
""
,
change_text
)



, программа воспринимает нажатие клавиши только, если окно выделено, как сделать чтоб даже если выделено другое приложение, к примеру, браузер программа воспринимала нажатие клавиш.

Python_newbie 28.10.2023 14:51

Цитата:

Сообщение от Shelok_Kholmes

С помощью этой функции сделал регистрацию нажатия:







Python:





Код:

root
.
bind
(
""
,
change_text
)



, программа воспринимает нажатие клавиши только, если окно выделено, как сделать чтоб даже если выделено другое приложение, к примеру, браузер программа воспринимала нажатие клавиш.

Насколько я знаю, в tkinter нет данного функционала, но можно использовать библиотеку pynput. (pip install pynput). Она отслеживает нажатие любой клавиши

Снипет:





Код:

from
pynput
import
keyboard
def
on_key_press
(
key
)
:
print
(
key
)
# Принт нажатой клавиши
with
keyboard
.
Listener
(
on_press
=
on_key_press
)
as
listener
:
listener
.
join
(
)



Так-же можно проверять отдельно нажатую клавишу:

Снипет2:





Код:

import
sys
from
pynput
import
keyboard
def
on_key_press
(
key
)
:
if
key
==
keyboard
.
Key
.
space
:
print
(
"Пробел"
)
elif
key
==
keyboard
.
Key
.
esc
:
sys
.
exit
(
)
with
keyboard
.
Listener
(
on_press
=
on_key_press
)
as
listener
:
listener
.
join
(
)



Время: 23:54