Skip to content

Latest commit

 

History

History
59 lines (42 loc) · 2.26 KB

File metadata and controls

59 lines (42 loc) · 2.26 KB

Screenboard - 屏幕键盘

Screenboard.pyw 是一个功能完善的屏幕键盘,支持发送按键到任意前台窗口,并提供了独特的 锁定模式(Lock Mode),可在自带的文本框中批量编辑内容后再一次性发送。它适用于触摸屏设备或临时需要软键盘的 PE 环境。

核心功能

1. 普通模式

  • 点击按键 → 自动激活当前前台窗口 → 发送对应的键盘事件
  • 支持功能键(F1~F12,方向键,Home/End,PgUp/PgDn 等)
  • 支持修饰键(Shift,Ctrl,Alt,Win)并实时高亮显示状态
  • 支持 Caps Lock(切换大写锁定,会真实改变系统状态)

2. 锁定模式

  • 点击 Lock Mode 按钮开启
  • 此时所有按键输入会进入下方的文本编辑区,而不是发送到其他窗口
  • 你可以编辑多行文本、使用退格/删除/方向键等
  • 再次点击 Lock Mode 按钮 关闭锁定 时,会将编辑区全部内容一次性发送到目标窗口,然后清空编辑区
  • 适合需要长文本输入的场景(如输入命令、脚本片段)

3. 目标窗口跟随

  • 键盘会自动检测当前活动窗口,并在窗口标题栏显示目标窗口名称
  • 当切换到键盘自身或不可用窗口时,会保持上次有效窗口
  • 发送按键前会自动恢复并置顶目标窗口

键盘布局

内置布局为 7 行,可自行修改:

self.keyboard_layout = [
    ['Esc','F1','F2',... ,'F12'],
    ['`~','1!','2@',... ,'BackSpace'],
    ['Tab','Q','W','E',... ,'\\|'],
    ...,
    ['Insert','Delete','Home','End','PgUp','PgDn']
]
  • 双字符键(如 1!)会根据 Shift 状态自动选择字符
  • 字母键的大小写受 Shift 和 Caps Lock 联合影响(符合 Windows 标准行为)

界面说明

  • 顶部:Lock Mode 开关 + Clear 清空按钮
  • 中部:可滚动的文本编辑区(锁定模式下使用)
  • 主体:标准键盘按键区
  • 底部状态栏:显示当前目标窗口、修饰键状态、当前模式

高级用法

添加自定义快捷键

send_key 方法中扩展 mod_key_mapfunc_key_map

常见问题

Q:点击按钮没有反应?
A:检查目标窗口是否可接收键盘输入(例如记事本、命令行)。另外某些窗口需要先单击激活。