回复 lynfr8
能接着给讲解一下吗?没有理解老大思路而逐条读代码真的太难了,我水平又太有限,谢谢了!
newuser 发表于 2010-7-12 17:02  #include <Array.au3>
#include '_Ini.au3'
While 1
Sleep(100)
$date = _IniReadSectionNames('setting.ini', 0);读取ini所有‘字段名’
;标志=1时返回的数组0号元素为数组的元素数量(默认);标志=0时关闭0元素返回数量;不过,标志=0时并未关闭0元素返回数量,依然可以返回。
For $i = 1 To $date[0]
If $date[$i] = @YEAR & "-" & @MON & "-" & @MDAY Then;如果读取的ini文件中的‘字段名’符合‘年-月-日’形式的
$Remind = _IniReadSection('setting.ini', $date[$i], 0);读取合适字段下的所有关键字或值
If $Remind <> 0 Then
For $n = 1 To $Remind[0][0]
If @HOUR & ":" & @MIN = $Remind[$n][0] Then;如果当前时分与已读取字段下的关键字相匹配
$Switch = MsgBox(5, $Remind[$n][0], $Remind[$n][1])
;显示指定时间指定想提示的,赋值给$Switch返回按下按钮的 ID
If $Switch = 4 Then;返回MsgBox按下按钮的 ID 为 RETRY(重试) 4
$oldRemind = _FileRead('setting.ini', 0);读取ini,赋值到$oldRemind
$File = FileOpen('setting.ini', 2);2 = 写入模式(先删除之前的内容)
FileWrite($File, StringReplace($oldRemind, $Remind[$n][0] & '=' & $Remind[$n][1], @HOUR & ":" & @MIN + 1 & '=' & $Remind[$n][1]));替换原来关键字“时分”,其中分钟+1
FileClose($File);关闭ini
Else;返回MsgBox按下按钮的 ID 为 CANCEL(取消) 2
_IniDelete('setting.ini', $date[$i], $Remind[$n][0]);删除指定字段的指定的关键字和数值
ExitLoop (2);默认值为 1(表示当前 For $n = 1 To $Remind[0][0] 循环). 2为For $i = 1 To $date[0]
EndIf
EndIf
Next
EndIf
EndIf
Next
WEnd
|