天问

AutoHotkey 显示按键脚本(3)

(1)演示

在视频演示中,经常需要把鼠标操作高亮,这个录屏工具可以解决。但是按键高亮却没有。这个可以通过AutoHotkey 脚本实现,具体效果如下:

在键盘输入过程中,Ctrl+C, Ctrl+V 等都会显示出来。

(2)实现

; @Author  : liuyuqi
; @Contact : liuyuqi.gov@msn.cn
; @Time    : 2015/2/12
; @Version : 1.1
; @Desc    : 显示组合键

#SingleInstance force
#NoEnv
SetBatchLines, -1

transN := 200	; 透明度
; #################################
;		GUI
; #################################
;
Gui, +AlwaysOnTop +ToolWindow -SysMenu -Caption +LastFound
Gui, Margin, 0, 0
WinSet, ExStyle, +0x20		 ; 鼠标穿透
WinSet, Transparent, %transN%
Gui, Color, Black
Gui, Font, cWhite s50 bold, Arial
Gui, Add, Text, vHotkeyText Center y20


; #################################
;		绑定按键
; #################################
;重复95次,A_Index表示第i次,默认0
Loop, 95
	Hotkey, % "~*" Chr(A_Index + 32), Display

Loop, 24 ; F1-F24
	Hotkey, % "~*F" A_Index, Display

Loop, 10 ; Numpad0 - Numpad9
	Hotkey, % "~*Numpad" A_Index - 1, Display

Otherkeys := "NumpadDiv|NumpadMult|NumpadAdd|NumpadSub|NumpadEnter|Tab|Enter|Esc|BackSpace|Del|Insert|Home|End|PgUp|PgDn|Up|Down|Left|Right|ScrollLock|CapsLock|NumLock|Pause"
Loop, parse, Otherkeys, |
	Hotkey, % "~*" A_LoopField, Display

Return

; #################################
;		显示按键
; #################################
;
Display:
	If A_ThisHotkey =
		Return
	mods := "Ctrl|Shift|Alt|LWin|RWin"
	prefix =
	Loop, Parse, mods, |
		if GetKeyState(A_LoopField)
			prefix := prefix A_LoopField " + "
	if !prefix		; 如果没有组合键则不显示
		Return
	key := SubStr(A_ThisHotkey, 3)
	if (key = " ")
		key := "Space"
	ShowHotkey(prefix key)
	FadeOut()
Return

ShowHotkey(Hotkey)
{
	GuiControl, , HotkeyText, %Hotkey%
	WinGetPos, ActWin_X, ActWin_Y, ActWin_W, ActWin_H, A
	text_w := ActWin_W, gui_y := (ActWin_Y + ActWin_H) - 100 -50 ;gui_y可能会
	GuiControl, Move, HotkeyText, w%text_w% center
	Try{
		Gui, Show, NoActivate x%ActWin_X% y%gui_y% h115 w%text_w%
	}		
}

FadeOut(sleep = 1000)
{
	global transN
	Sleep, %Sleep%
	Gui, +LastFound
	Loop, % transN
		WinSet, Transparent, % (A_Index - transN - 1) * -1
	Gui, Hide
	WinSet, Transparent, % transN
}

项目开源:

https://github.com/jianboy/AutoHotkey-Script
博客地址:http://blog.yoqi.me/?p=16744
扫我捐助哦
喜欢 0

这篇文章还没有评论

发表评论