如何解决Python:仅当应用程序处于焦点时才侦听键
我有一个关于为控制台窗口制作音频播放器的小项目。一切都很顺利,但我正在为一个小细节而苦苦挣扎。我希望当用户按下某个键(例如空格)时暂停音频,而我已经实现了这一点。问题是:即使播放器没有聚焦,音频也会暂停。
例如,我在播放器上放了一些音乐,然后转到网络浏览器。如果在浏览器中导航时按空格键,音频将停止。
我希望程序仅在应用聚焦时才侦听。这是我的代码的一部分:
def play_pause():
global buttons
if '⏸' in buttons:
buttons = (' ' * 21) + '⏮ ⯈ ⏭'
else:
buttons = (' ' * 21) + '⏮ ⏸ ⏭'
audio.play_pause_audio()
def controller(key):
if key == Key.space or key == Key.media_play_pause:
play_pause()
# TO DO:
# if key == Key.left or key == Key.media_prevIoUs:
# pass
# if key == Key.right or key == Key.media_next:
# pass
draw_player()
def start_player(audio_name):
global current_audio
current_audio = audio_name
draw_player()
with Listener(on_press=controller) as listener:
listener.join()
我目前正在使用 pynput:from pynput.keyboard import Key,Listener
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。