收起到底部的版本:方法和前面一样
[Rainmeter]
BackgroundMode=2
SolidColor=0,0,0,1
MouseOverAction=[!UpdateMeasure MeasureMouseOverDetection]
MouseLeaveAction=[!UpdateMeasure MeasureUpDetection][!UpdateMeasure MeasureDownDetection][!UpdateMeasure MeasureLeftDetection][!UpdateMeasure MeasureRightDetection][!UpdateMeasure MeasureMouseLeaveDetection]
[Variables]
speed=30
[MeasureUpDetection]
Measure=Calc
Formula=(#CURRENTCONFIGY#<=0)
UpdateDivider=-1
DynamicVariables=1
[MeasureDownDetection]
Measure=Calc
Formula=((#CURRENTCONFIGY#+#CURRENTCONFIGHEIGHT#)>=#WORKAREAHEIGHT#)
UpdateDivider=-1
DynamicVariables=1
[MeasureLeftDetection]
Measure=Calc
Formula=(#CURRENTCONFIGX#<=0)
UpdateDivider=-1
DynamicVariables=1
[MeasureRightDetection]
Measure=Calc
Formula=((#CURRENTCONFIGX#+#CURRENTCONFIGWIDTH#)>=#WORKAREAWIDTH#)
UpdateDivider=-1
DynamicVariables=1
[MeasureMouseOverDetection]
Measure=Calc
Formula=0
UpdateDivider=-1
IfCondition=(MeasureUpDetection=1)&&(MeasureLeftDetection=0)&&(MeasureRightDetection=0)
IfTrueAction=[!CommandMeasure MeasureMoveAction "Stop 1"][!UpdateMeasure MeasureMoveAction][!SetOption MeasureUpLoop Formula "MeasureUpLoop+#speed#"][!UpdateMeasure MeasureUpLoop][!CommandMeasure MeasureMoveAction "Execute 1"]
IfCondition2=MeasureLeftDetection=1
IfTrueAction2=[!CommandMeasure MeasureMoveAction "Stop 2"][!UpdateMeasure MeasureMoveAction][!SetOption MeasureLeftLoop Formula "MeasureLeftLoop+#speed#"][!UpdateMeasure MeasureLeftLoop][!CommandMeasure MeasureMoveAction "Execute 2"]
IfCondition3=(MeasureLeftDetection=0)&&(MeasureRightDetection=1)
IfTrueAction3=[!CommandMeasure MeasureMoveAction "Stop 3"][!UpdateMeasure MeasureMoveAction][!SetOption MeasureLeftLoop Formula "MeasureLeftLoop+#speed#"][!UpdateMeasure MeasureLeftLoop][!CommandMeasure MeasureMoveAction "Execute 3"]
IfCondition4=(MeasureUpDetection=0)&&(MeasureLeftDetection=0)&&(MeasureRightDetection=0)&&(MeasureDownDetection=1)
IfTrueAction4=[!CommandMeasure MeasureMoveAction "Stop 4"][!UpdateMeasure MeasureMoveAction][!SetOption MeasureUpLoop Formula "MeasureUpLoop+#speed#"][!UpdateMeasure MeasureUpLoop][!CommandMeasure MeasureMoveAction "Execute 4"]
IfConditionMode=1
[MeasureMouseLeaveDetection]
Measure=Calc
Formula=0
UpdateDivider=-1
DynamicVariables=1
IfCondition=(MeasureUpDetection=1)&&(MeasureLeftDetection=0)&&(MeasureRightDetection=0)
IfTrueAction=[!CommandMeasure MeasureMoveAction "Stop 1"][!UpdateMeasure MeasureMoveAction][!SetOption MeasureUpLoop Formula "MeasureUpLoop-#speed#"][!UpdateMeasure MeasureUpLoop][!CommandMeasure MeasureMoveAction "Execute 1"]
IfCondition2=MeasureLeftDetection=1
IfTrueAction2=[!CommandMeasure MeasureMoveAction "Stop 2"][!UpdateMeasure MeasureMoveAction][!SetOption MeasureLeftLoop Formula "MeasureLeftLoop-#speed#"][!UpdateMeasure MeasureLeftLoop][!CommandMeasure MeasureMoveAction "Execute 2"]
IfCondition3=(MeasureLeftDetection=0)&&(MeasureRightDetection=1)
IfTrueAction3=[!CommandMeasure MeasureMoveAction "Stop 3"][!UpdateMeasure MeasureMoveAction][!SetOption MeasureLeftLoop Formula "MeasureLeftLoop-#speed#"][!UpdateMeasure MeasureLeftLoop][!CommandMeasure MeasureMoveAction "Execute 3"]
IfCondition4=(MeasureUpDetection=0)&&(MeasureLeftDetection=0)&&(MeasureRightDetection=0)&&(MeasureDownDetection=1)
IfTrueAction4=[!CommandMeasure MeasureMoveAction "Stop 4"][!UpdateMeasure MeasureMoveAction][!SetOption MeasureUpLoop Formula "MeasureUpLoop-#speed#"][!UpdateMeasure MeasureUpLoop][!CommandMeasure MeasureMoveAction "Execute 4"]
IfConditionMode=1
[MeasureUpLoop]
Measure=Calc
Formula=0
UpdateDivider=-1
DynamicVariables=1
IfAboveValue=0
IfAboveAction=[!SetOption [#CURRENTSECTION] Formula "0"][!UpdateMeasure [#CURRENTSECTION]]
IfBelowValue=(1-#CURRENTCONFIGHEIGHT#)
IfBelowAction=[!SetOption [#CURRENTSECTION] Formula "(1-#CURRENTCONFIGHEIGHT#)"][!UpdateMeasure [#CURRENTSECTION]]
[MeasureLeftLoop]
Measure=Calc
Formula=0
UpdateDivider=-1
DynamicVariables=1
IfAboveValue=0
IfAboveAction=[!SetOption [#CURRENTSECTION] Formula "0"][!UpdateMeasure [#CURRENTSECTION]]
IfBelowValue=(1-#CURRENTCONFIGWIDTH#)
IfBelowAction=[!SetOption [#CURRENTSECTION] Formula "(1-#CURRENTCONFIGWIDTH#)"][!UpdateMeasure [#CURRENTSECTION]]
[MeasureYTime]
Measure=Calc
Formula=ceil(#CURRENTCONFIGHEIGHT#/#speed#)
UpdateDivider=-1
DynamicVariables=1
[MeasureXTime]
Measure=Calc
Formula=ceil(#CURRENTCONFIGWIDTH#/#speed#)
UpdateDivider=-1
DynamicVariables=1
[MeasureMoveAction]
Measure=Plugin
Plugin=ActionTimer
ActionList1=Repeat UpLoop, 1, [MeasureYTime]
UpLoop=[!UpdateMeasure MeasureUpLoop][!Move "#CURRENTCONFIGX#" "[&MeasureUpLoop]"][!Redraw]
ActionList2=Repeat LeftLoop, 1, [MeasureXTime]
LeftLoop=[!UpdateMeasure MeasureLeftLoop][!Move "[&MeasureLeftLoop]" "#CURRENTCONFIGY#"][!Redraw]
ActionList3=Repeat RightLoop, 1, [MeasureXTime]
RightLoop=[!UpdateMeasure MeasureLeftLoop][!Move "(#WORKAREAWIDTH#-#CURRENTCONFIGWIDTH#-[&MeasureLeftLoop])" "#CURRENTCONFIGY#"][!Redraw]
ActionList4=Repeat DownLoop, 1, [MeasureYTime]
DownLoop=[!UpdateMeasure MeasureUpLoop][!Move "#CURRENTCONFIGX#" "(#WORKAREAHEIGHT#-#CURRENTCONFIGHEIGHT#-[&MeasureUpLoop])"][!Redraw]
UpdateDivider=-1
DynamicVariables=1