You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在按下回车键前执行函数?实现输入内容自动追加指定表情

解决回车前追加表情的问题

你的代码问题在于,hook_key的回调是在回车按键事件触发后执行,且block_key的拦截方式不够精准,导致表情仍在回车提交后才出现。可以通过抑制回车的默认行为、调整执行时序来实现需求:

import keyboard

def on_enter_press(event):
    if event.name == "enter":
        # 直接抑制回车的默认提交行为
        event.suppress = True
        # 写入要追加的表情到输入框
        keyboard.write("🗿🍷")
        # 加微小延迟确保表情写入完成,再触发回车发送内容
        keyboard.press_and_release("enter", delay=0.05)

# 监听所有按键按下事件
keyboard.on_press(on_enter_press)

# 等待ESC键退出程序
keyboard.wait("esc")

关键调整说明:

  • 用keyboard.on_press替代hook_key,配合event.suppress = True直接阻止回车的默认提交动作,避免原内容先被发送。
  • 添加delay=0.05的微小延迟,确保表情完全写入输入框后再触发回车,解决时序错位问题。
  • 移除unhook_all(),否则只能触发一次回车操作,保证功能持续生效。

内容的提问来源于stack exchange,提问作者Lethargistic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 06:54:53