读书人

怎么结合HOTKEY组件修改系统热键

发布时间: 2013-07-01 12:33:04 作者: rapoo

如何结合HOTKEY组件修改系统热键?
procedure shortCutIntialize(sCut:TShortCut;Handle:HWND);
var T: TShiftState;
begin
HotKeyId:=GlobalAddAtom('MyHotKey')-$C000;
ShortCutToKey(sCut, Key, T);
Shift := ShiftStateToWord(T);
RegisterHotKey(Handle,hotkeyid,Shift,Key);
end;
上面创建Ctrl+F1键为系统热键成功。然后接受HOTKEY的值,修改,是用上面一样的代码呢,还是怎么样。我用一样的,没有反应,原来的热键还在。
function changeHotKey(sCut:TShortCut;Handle:HWND):integer;
var
T: TShiftState;
begin
//UnRegisterHotKey(handle,HotKeyId);
//GlobalDeleteAtom(HotKeyId);
//HotKeyID:=0;
HotKeyID := GlobalAddAtom('MyHotKey') - $C000;
ShortCutToKey(sCut, Key, T);
Shift := ShiftStateToWord(T);
RegisterHotKey(Handle, HotKeyID, Shift, Key);
Result:=1
end;
[解决办法]
http://bbs.csdn.net/topics/10443360

读书人网 >.NET

热点推荐