# 怎么才能实现win+数字键(小键盘的数字键，不是qwer上面的那个数字键)也能切换软件呢？

**URL:** <https://meta.appinn.net/t/topic/69934>\
**Category:** 问题求助\
**Tags:** windows\
**Created:** [2025 年4 月 10 日 11:57 UTC](https://meta.appinn.net/t/topic/69934 "2025-04-10T11:57:47Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

作者： ![dshuiewhui](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/dshuiewhui/32/80496_2.png) [@dshuiewhui](https://meta.appinn.net/u/dshuiewhui)\
发布日期： [2025 年4 月 10 日 11:57 UTC](https://meta.appinn.net/t/topic/69934/1 "2025-04-10T11:57:48Z")

</div>

平时一般使用win+数字键(qwer上面的那个数字键)切换软件，但是不太好按；  
所以今天入手了一个数字小键盘，但是发现win+小键盘的数字键没反应，不能切换软件；  
有没有办法能让win+小键盘的数字键也能切换软件呢？

已经尝试过的失败方法：利用autohotkey脚本(如下代码块所示)，按下win+小键盘数字键能切换逻辑，但是松开win键后win会弹出；  
所以希望有别的方法能解决，或者能完善该ahk脚本也行(不知道是延迟逻辑问题还是autohotkey优先级的问题)

```auto
; 我的代码思路就是在按下win+小键盘的数字键时，实际发出win+qwer上面的数字键
; 但是如果一直按着win键不放点击小键盘的多个数字进行多次切换的时候，一旦放开win键，就会弹出win菜单
; 但是如果使用win+qwer上面的数字键进行该操作时就不会最后弹出win菜单
; 我的改进思路是检测到按下win键+数字键后释放win键，但是不太成功
#Numpad1::
#Numpad2::
#Numpad3::
#Numpad4::
#Numpad5::
#Numpad6::
#Numpad7::
#Numpad8::
#Numpad9::
#Numpad0::
    ; 使用正则表达式提取数字
    RegExMatch(A_ThisHotkey, "\d", match)
    SendInput {Blind}{LWin Down}%match%{LWin Up}
    ; 强制释放物理Win键
    if GetKeyState("LWin", "P")
        Send {LWin Up}
return

```

---

<div class="post-metadata">

作者： ![KagamineTime](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/k/4da419/32.png) [@KagamineTime](https://meta.appinn.net/u/KagamineTime)\
发布日期： [2025 年4 月 10 日 13:37 UTC](https://meta.appinn.net/t/topic/69934/2 "2025-04-10T13:37:33Z")

</div>

```auto
#Numpad1::#1
#Numpad2::#2
#Numpad3::#3
……

```

直接重映射按键应该就可以了～不用写得那么麻烦……

---

<div class="post-metadata">

作者： ![dshuiewhui](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/dshuiewhui/32/80496_2.png) [@dshuiewhui](https://meta.appinn.net/u/dshuiewhui)\
发布日期： [2025 年4 月 10 日 13:45 UTC](https://meta.appinn.net/t/topic/69934/3 "2025-04-10T13:45:46Z")

</div>

```auto
#Numpad1::SendInput #1 ; Win+1
#Numpad2::SendInput #2 ; Win+2
#Numpad3::SendInput #3 ; Win+3
#Numpad4::SendInput #4 ; Win+4
#Numpad5::SendInput #5 ; Win+5
#Numpad6::SendInput #6 ; Win+6
#Numpad7::SendInput #7 ; Win+7
#Numpad8::SendInput #8 ; Win+8
#Numpad9::SendInput #9 ; Win+9
#Numpad0::SendInput #0 ; Win+0

```

如果是这样直接重新映射按键的话,会有一个问题：  
就是如果你按着win键时，如果按1后不放开win键再按2，即在win键按着的情况下多次按下小键盘的数字键，最后放开win键时，会弹出win菜单。  
**所以我才想问有没有其他方法或者有没有办法继续改进ahk脚本来阻止弹出**  
(最上面的代码是我改进过的，我原始的代码也是直接重新映射按键)

---

<div class="post-metadata">

作者： ![KagamineTime](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/k/4da419/32.png) [@KagamineTime](https://meta.appinn.net/u/KagamineTime)\
发布日期： [2025 年4 月 10 日 15:16 UTC](https://meta.appinn.net/t/topic/69934/4 "2025-04-10T15:16:34Z")

</div>

我使用的 AutoHotkey 版本是 v2，系统版本是 Windows 10 22H2，  
因为我的键盘没有小键盘区，所以我分别用下面的2段 AutoHotkey v2 代码尝试了一下：

```auto
; 第1段
#F1::SendInput "#1"
#F2::SendInput "#2"

```

```auto
; 第2段
#F1::#1
#F2::#2

```

发现都没有出现“在win键按着的情况下多次按下小键盘的数字键，最后放开win键时，会弹出win菜单”的问题……

或许你可以在你那边试试将数字小键盘区的按键换成其他按键，看看有没有这个问题？

另外，如果还是无法解决问题，  
我此前写过关于 CapsLock 的一段 AutoHotkey v2 脚本，  
或许可以作为类似的参考～

```auto
*CapsLock:: { ; 单独按下并松开 CapsLock 时才切换大小写状态，否则不切换状态
	KeyWait("CapsLock") ; 等待 CapsLock 松开
	If (A_ThisHotkey = "*CapsLock") ; 如果在按下 CapsLock 与松开 CapsLock 期间没有按下其它按键
		SetCapsLockState(!GetKeyState("CapsLock", "T")) ; 切换 CapsLock 状态
}

```

---

<div class="post-metadata">

作者： ![CCR](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/ccr/32/68442_2.png) [@CCR](https://meta.appinn.net/u/CCR)\
发布日期： [2025 年4 月 11 日 03:06 UTC](https://meta.appinn.net/t/topic/69934/5 "2025-04-11T03:06:28Z")

</div>

[Capsicain | Windows 下更底层的键盘布局、键位映射工具](https://meta.appinn.net/t/topic/39225)

这玩意似乎有识别numberpad的功能？可以通过他将win+numberpad映射成f20这种，然后autohotkey响应f20?

---

<div class="post-metadata">

作者： ![lazyTool](https://meta-edge.appinn.com/letter_avatar_proxy/v4/letter/l/c0e974/32.png) [@lazyTool](https://meta.appinn.net/u/lazyTool)\
发布日期： [2025 年4 月 11 日 12:04 UTC](https://meta.appinn.net/t/topic/69934/6 "2025-04-11T12:04:07Z")

</div>

Win + 数字 切换软件，感觉手指跨度还挺大的，而且，Win + 数字 对应的软件不一致。  
可以试试ETool [https://etool.site](https://etool.site)

启动或者切换都可以，比如 wx- 直接用来启动微信， dp- 用来打开deepseek， db- 用来打开豆包。

主要是没有记忆负担

---

<div class="post-metadata">

作者： ![dshuiewhui](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/dshuiewhui/32/80496_2.png) [@dshuiewhui](https://meta.appinn.net/u/dshuiewhui)\
发布日期： [2025 年4 月 11 日 13:08 UTC](https://meta.appinn.net/t/topic/69934/7 "2025-04-11T13:08:25Z")

</div>

可能是测试问题？我这边换了个键盘试验都是会出现win后释放时弹出win菜单；  
不过我刚才换了个思路，将num1这些直接指代为1就ok了 :smiling_face_with_tear:之前想复杂了；

---

<div class="post-metadata">

作者： ![dshuiewhui](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/dshuiewhui/32/80496_2.png) [@dshuiewhui](https://meta.appinn.net/u/dshuiewhui)\
发布日期： [2025 年4 月 11 日 13:10 UTC](https://meta.appinn.net/t/topic/69934/8 "2025-04-11T13:10:29Z")

</div>

这个可以修改Fn的映射吗，我一直想把Fn的功能区锁定键修改一下，我这个直接点击Fn就锁定功能区了，不像别的笔记本一样是用Fn+Esc锁定，太容易误触了 :joy:

---

<div class="post-metadata">

作者： ![CCR](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/ccr/32/68442_2.png) [@CCR](https://meta.appinn.net/u/CCR)\
发布日期： [2025 年4 月 11 日 15:23 UTC](https://meta.appinn.net/t/topic/69934/9 "2025-04-11T15:23:44Z")

</div>

这种情况不行，这是硬件问题，不是软件能解决了的:joy:

---

<div class="post-metadata">

作者： ![dshuiewhui](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/dshuiewhui/32/80496_2.png) [@dshuiewhui](https://meta.appinn.net/u/dshuiewhui)\
发布日期： [2025 年4 月 15 日 14:33 UTC](https://meta.appinn.net/t/topic/69934/10 "2025-04-15T14:33:55Z")

</div>

但是matebook的电脑管家能够修改Fn键默认亮灯时，是使用f1~f12还是对应的功能区，这是不是意味着只是驱动上的修改？我看这个软件似乎能修改驱动层面的响应，是不是意味着能自定义？如果能自定义的话，是不是需要官方的硬件文档还是有通用的文档参考呢，还是不需要因为该软件已经帮忙处理好，只需要写逻辑就好了？

---

<div class="post-metadata">

作者： ![VictoryRoad](https://meta-edge.appinn.com/user_avatar/meta.appinn.net/victoryroad/32/58964_2.png) [@VictoryRoad](https://meta.appinn.net/u/VictoryRoad)\
发布日期： [2025 年4 月 15 日 15:16 UTC](https://meta.appinn.net/t/topic/69934/11 "2025-04-15T15:16:40Z")

</div>

> [@dshuiewhui](#):
>
> matebook的电脑管家

它那种好像是软件有特殊权限，可以直接修改 BIOS 设置。
