`
javababy1
  • 浏览: 1169299 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

PB中系统热键(不管窗口是否有焦点)

阅读更多

-- Flystone 整理

首先定义 API

  1. FUNCTIONIntegerGlobalAddAtom(refstringlpString)LIBRARY"kernel32.dll"ALIASFOR"GlobalAddAtomA"
  2. FUNCTIONulongRegisterHotKey(ulonghwnd,ulongid,ulongfsModifiers,ulongvk)LIBRARY"user32.dll"

定义变量:

  1. constantintegerMOD_ALT=1
  2. constantintegerMOD_CONTROL=2
  3. constantintegerMOD_SHIFT=4
  4. intatomid[11]//用于放热键ID

注册热键,比如说在OPEM事件中:

  1. longll_RC
  2. stringls_str[11]
  3. ls_str[1]="MyatomID0"
  4. atomid[1]=GlobalAddAtom(ls_str[1])//得到唯一的ID,保证不和其他应用程序发生冲突
  5. ll_RC=RegisterHotKey(Handle(this),atomid[1],0,48)//0
  6. ls_str[2]="MyatomID1"
  7. atomid[2]=GlobalAddAtom(ls_str[2])//得到唯一的ID
  8. ll_RC=ll_RC+RegisterHotKey(Handle(this),atomid[2],0,49)//1
  9. ls_str[3]="MyatomID2"
  10. atomid[3]=GlobalAddAtom(ls_str[3])//得到唯一的ID
  11. ll_RC=ll_RC+RegisterHotKey(Handle(this),atomid[3],0,50)//2
  12. ls_str[4]="MyatomID3"
  13. atomid[4]=GlobalAddAtom(ls_str[4])//得到唯一的ID
  14. ll_RC=ll_RC+RegisterHotKey(Handle(this),atomid[4],0,51)//3
  15. ls_str[5]="MyatomID4"
  16. atomid[5]=GlobalAddAtom(ls_str[5])//得到唯一的ID
  17. ll_RC=ll_RC+RegisterHotKey(Handle(this),atomid[5],0,52)//4
  18. ls_str[6]="MyatomID5"
  19. atomid[6]=GlobalAddAtom(ls_str[6])//得到唯一的ID
  20. ll_RC=ll_RC+RegisterHotKey(Handle(this),atomid[6],0,53)//5
  21. ls_str[7]="MyatomID6"
  22. atomid[7]=GlobalAddAtom(ls_str[7])//得到唯一的ID
  23. ll_RC=ll_RC+RegisterHotKey(Handle(this),atomid[7],0,54)//6
  24. ls_str[8]="MyatomID7"
  25. atomid[8]=GlobalAddAtom(ls_str[8])//得到唯一的ID
  26. ll_RC=ll_RC+RegisterHotKey(Handle(this),atomid[8],0,55)//7
  27. ls_str[9]="MyatomID8"
  28. atomid[9]=GlobalAddAtom(ls_str[9])//得到唯一的ID
  29. ll_RC=ll_RC+RegisterHotKey(Handle(this),atomid[9],0,56)//8
  30. ls_str[10]="MyatomID9"
  31. atomid[10]=GlobalAddAtom(ls_str[10])//得到唯一的ID
  32. ll_RC=ll_RC+RegisterHotKey(Handle(this),atomid[10],0,57)//9
  33. ls_str[11]="MyatomIDX"
  34. ifll_RC<10then//这儿自行修改
  35. messagebox("错误","错误信息")
  36. endif

响应OTHWE事件:

  1. IFwparam=atomid[1]....THEN
  2. //messagebox('','asdf')
  3. //你的脚本
  4. ENDIF

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics