网友请我帮忙写一个Ctrl + ↑ 和 ↓ 进行参数调整的功能,虽然实现起来其实很简单,但是既然有需要,就贴出来分享给需要的人吧~~~
首先,需要安装pywin32库,然后作以下引用
import win32api # Keypress capture
import win32con # Key define
然后,根据需要的监控的键,从win32con中查到具体的定义:
Ctrl --> win32con.VK_CONTROL
↑ --> win32con.VK_UP
↓ --> win32con.VK_DOWN
接着,就可以开始编码了:
inc_dec = ""
# ------------- Spec_FOCR 手动调整 ---------------
if win32api.GetAsyncKeyState(win32con.VK_CONTROL):
# Spec_FOCR动态增加处理 ↑
vk_up = win32api.GetAsyncKeyState(win32con.VK_UP)
if (old_up!=0) and (vk_up==0): #key ↑ up
Over_FOCR_Spec += 0.05
inc_dec="↑"
#endif
old_up = vk_up
# Spec_FOCR动态降低处理 ↓
vk_down = win32api.GetAsyncKeyState(win32con.VK_DOWN)
if (old_down!=0) and (vk_down==0): #key ↓ up
if (Over_FOCR_Spec > 0.05): #确保Over_FOCR_Spec不会被调到负值
Over_FOCR_Spec -= 0.05
inc_dec="↓"
# endif
#endif
old_down = vk_down
# endif
将如上代码加到主程序的适当位置即可实现Ctrl + ↑增加Over_FOCR_Spec值,Ctrl + ↓ 降低Over_FOCR_Spec值,同时inc_dec可以辅助标记刚才的对值的调整是↑ 或 ↓。
最后,需要注意的是,在程序开始前记得先初始化以下变量:
old_up=0
old_down=0