SetCompressor /SOLID lzma
SetCompressorDictSize 32
XPStyle on
SilentInstall silent
;Icon "heart.ico"
!include "nsDialogs_CommCtrl.nsh"
!include "WinWinDef.nsh"
OutFile "heart.exe"
Caption "提示"
Var x
Var y
!macro CountItemPos io na
${If} ${na} < 5
Math::Script "r=140; x=205; y=240; n=${io}+0.1;
NS=x+r*cos(n); NS=y-r*sin(n)"
${ElseIf} ${na} > 4
${AndIf} ${na} < 9
Math::Script "r=290; x=340; y=245; n=7.8+${io}*0.5;
NS=x+r*cos(n); NS=y-r*sin(n)"
${ElseIf} ${na} = 9
Push 348
Push 555
${ElseIf} ${na} > 9
${AndIf} ${na} < 14
Math::Script "r=290; x=360; y=242; n=14.01+${io}*0.5;
NS=x+r*cos(n); NS=y-r*sin(n)"
${ElseIf} ${na} > 13
${AndIf} ${na} < 18
Math::Script "r=140; x=500; y=240; n=2.75+${io};
NS=x+r*cos(n); NS=y-r*sin(n)"
${ElseIf} ${na} > 17
Math::Script "x=0; y=0; nc=${na}*70-16*70;
NS=x+nc; NS=y"
${EndIf}
Sleep 500
!macroend
Section
FindWindow $0 "Progman" "Program Manager"
FindWindow $0 "SHELLDLL_DefView" "" $0
GetDlgItem $1 $0 1
SendMessage $1 ${LVM_GETITEMCOUNT} 0 0 $2
IntCmp $2 18 +3 0 +3
MessageBox MB_ICONINFORMATION|MB_OK "桌面图标过少,不能实现!"
Quit
SendMessage $1 ${LVM_SETEXTENDEDLISTVIEWSTYLE} ${LVS_EX_SNAPTOGRID} 0
${NSD_RemoveStyle} $1 ${LVS_AUTOARRANGE}
IntOp $2 $2 - 1
${For} $0 0 $2
Math::Script /NOUNLOAD "r3=r0/1.4"
!insertmacro CountItemPos $3 $0
Pop $y
Pop $x
${MAKELPARAM} $3 $x $x $y
SendMessage $1 ${LVM_SETITEMPOSITION} $0 $3
${Next}
SectionEnd
免责声明:根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。丨本站为个人博客非盈利性站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途。丨本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
BY-NC-SA协议进行授权
转载请注明:永恒心锁-分享互联网 » 将桌面图标排列成心形