杉宫竹苑工作室

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1753|回复: 0

即时获取复选框通知

[复制链接]
发表于 2017-2-23 21:26:33 | 显示全部楼层 |阅读模式

正式会员享受无限制浏览网站功能和高速网盘下载,赶快加入本站吧!

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. outfile 'CheckboxNotify.exe'
  2. showinstdetails show
  3. ;licenseData 'QQ.rtf'

  4. !define NOCHECKED_TEXT '请选择一个勾选'

  5. !include WinMessages.nsh
  6. !include LogicLib.nsh

  7. ;page license
  8. page custom CustomCreate CustomLeave
  9. page instfiles

  10. section -

  11. sectionend

  12. function .onInit
  13. initpluginsdir
  14. gettempfilename $0
  15. rename $0 '$PLUGINSDIR\custom.ini'
  16. call WriteIni
  17. functionend

  18. function CustomCreate
  19. push $R1
  20. InstallOptions::InitDialog /NOUNLOAD '$PLUGINSDIR\custom.ini'
  21. pop $R1
  22. GetDlgItem $R0 $HWNDPARENT 1
  23. EnableWindow $R0 0
  24. InstallOptions::Show '$PLUGINSDIR\custom.ini'
  25. pop $R1
  26. pop $R1
  27. pop $R1
  28. functionend

  29. function CustomLeave
  30. readinistr $0 '$PLUGINSDIR\custom.ini' 'Settings' 'State'
  31. ${if} $0 == 1
  32. readinistr $1 '$PLUGINSDIR\custom.ini' 'Field 1' 'Text'
  33. readinistr $2 '$PLUGINSDIR\custom.ini' 'Field 5' 'HWND'
  34. readinistr $3 '$PLUGINSDIR\custom.ini' 'Field 1' 'State'
  35. ${if} $3 == 1
  36. SendMessage $2 ${WM_SETTEXT} 1 'STR:$1'
  37. GetDlgItem $R0 $HWNDPARENT 1
  38. EnableWindow $R0 1
  39. ${else}
  40. SendMessage $2 ${WM_SETTEXT} 1 'STR:${NOCHECKED_TEXT}'
  41. GetDlgItem $R0 $HWNDPARENT 1
  42. EnableWindow $R0 0
  43. ${endif}
  44. readinistr $2 '$PLUGINSDIR\custom.ini' 'Field 2' 'HWND'
  45. SendMessage $2 ${BM_SETCHECK} 0 0
  46. readinistr $2 '$PLUGINSDIR\custom.ini' 'Field 3' 'HWND'
  47. SendMessage $2 ${BM_SETCHECK} 0 0
  48. abort
  49. ${elseif} $0 == 2
  50. readinistr $1 '$PLUGINSDIR\custom.ini' 'Field 2' 'Text'
  51. readinistr $2 '$PLUGINSDIR\custom.ini' 'Field 5' 'HWND'
  52. readinistr $3 '$PLUGINSDIR\custom.ini' 'Field 2' 'State'
  53. ${if} $3 == 1
  54. SendMessage $2 ${WM_SETTEXT} 1 'STR:$1'
  55. GetDlgItem $R0 $HWNDPARENT 1
  56. EnableWindow $R0 1
  57. ${else}
  58. SendMessage $2 ${WM_SETTEXT} 1 'STR:${NOCHECKED_TEXT}'
  59. GetDlgItem $R0 $HWNDPARENT 1
  60. EnableWindow $R0 0
  61. ${endif}
  62. readinistr $2 '$PLUGINSDIR\custom.ini' 'Field 1' 'HWND'
  63. SendMessage $2 ${BM_SETCHECK} 0 0
  64. readinistr $2 '$PLUGINSDIR\custom.ini' 'Field 3' 'HWND'
  65. SendMessage $2 ${BM_SETCHECK} 0 0
  66. abort
  67. ${elseif} $0 == 3
  68. readinistr $1 '$PLUGINSDIR\custom.ini' 'Field 3' 'Text'
  69. readinistr $2 '$PLUGINSDIR\custom.ini' 'Field 5' 'HWND'
  70. readinistr $3 '$PLUGINSDIR\custom.ini' 'Field 3' 'State'
  71. ${if} $3 == 1
  72. SendMessage $2 ${WM_SETTEXT} 1 'STR:$1'
  73. GetDlgItem $R0 $HWNDPARENT 1
  74. EnableWindow $R0 1
  75. ${else}
  76. SendMessage $2 ${WM_SETTEXT} 1 'STR:${NOCHECKED_TEXT}'
  77. GetDlgItem $R0 $HWNDPARENT 1
  78. EnableWindow $R0 0
  79. ${endif}
  80. readinistr $2 '$PLUGINSDIR\custom.ini' 'Field 1' 'HWND'
  81. SendMessage $2 ${BM_SETCHECK} 0 0
  82. readinistr $2 '$PLUGINSDIR\custom.ini' 'Field 2' 'HWND'
  83. SendMessage $2 ${BM_SETCHECK} 0 0
  84. abort
  85. ${endif}
  86. functionend

  87. function WriteIni
  88. WriteIniStr '$PLUGINSDIR\custom.ini' 'Settings' 'NumFields' '5'

  89. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 1' 'Type' 'Checkbox'
  90. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 1' 'Left' '2'
  91. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 1' 'Top' '2'
  92. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 1' 'Right' '100'
  93. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 1' 'Bottom' '14'
  94. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 1' 'Text' 'Checkbox one'
  95. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 1' 'State' '0'
  96. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 1' 'Flags' 'NOTIFY'

  97. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 2' 'Type' 'Checkbox'
  98. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 2' 'Left' '2'
  99. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 2' 'Top' '18'
  100. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 2' 'Right' '100'
  101. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 2' 'Bottom' '32'
  102. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 2' 'Text' 'Checkbox two'
  103. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 2' 'State' '0'
  104. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 2' 'Flags' 'NOTIFY'

  105. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 3' 'Type' 'Checkbox'
  106. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 3' 'Left' '2'
  107. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 3' 'Top' '36'
  108. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 3' 'Right' '100'
  109. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 3' 'Bottom' '50'
  110. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 3' 'Text' 'Checkbox three'
  111. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 3' 'State' '0'
  112. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 3' 'Flags' 'NOTIFY'

  113. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 4' 'Type' 'GroupBox'
  114. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 4' 'Left' '30'
  115. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 4' 'Top' '70'
  116. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 4' 'Right' '-31'
  117. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 4' 'Bottom' '120'
  118. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 4' 'Text' 'Select Checkbox'

  119. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 5' 'Type' 'Text'
  120. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 5' 'Left' '40'
  121. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 5' 'Top' '90'
  122. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 5' 'Right' '-41'
  123. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 5' 'Bottom' '105'
  124. WriteIniStr '$PLUGINSDIR\custom.ini' 'Field 5' 'State' '${NOCHECKED_TEXT}'
  125. Functionend
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SgzyStudio

GMT+8, 2024-5-19 20:00 , Processed in 0.119272 second(s), 27 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表