【发布时间】:2020-06-13 01:06:53
【问题描述】:
所以,我正在做这个手表程序。我有一个循环,用于不断更新时间。但由于某种原因,系统在循环开始时无法识别Do。它在一个while循环中,如果这改变了任何东西。我还输入了On Error Resume Next,但仍然收到错误消息。这有联系吗?帮助将不胜感激。这是源代码:
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set ie = CreateObject("InternetExplorer.Application")
ie.Navigate "about:blank"
While ie.ReadyState <> 4 : WScript.Sleep 100 : Wend
ie.ToolBar = False
ie.StatusBar = False
ie.Width = 200
ie.Height = 250
ie.document.body.innerHTML = "<p id='msg'>0</p>"
Set style = ie.document.CreateStyleSheet
style.AddRule "p", "text-align: center;"
ie.Visible = True
Do
Set colItems = objWMIService.ExecQuery("Select * from Win32_LocalTime")
If objItem.DayOfWeek = 1 Then
day_name = "Monday"
Else If objItem.DayOfWeek = 2 Then
day_name = "Tuesday"
Else If objItem.DayOfWeek = 3 Then
day_name = "Wednesday"
Else If objItem.DayOfWeek = 4 Then
day_name = "Thursday"
Else If objItem.DayOfWeek = 5 Then
day_name = "Friday"
Else If objItem.DayOfWeek = 6 Then
day_name = "Saturday"
Else
day_name = "Sunday"
End If
For Each objItem In colItems
ie.document.getElementById("msg").innerText = "Date:" & vbCrLf & day_name & vbCrLf & objItem.Day & "/" & objItem.Month & "/" & objItem.Year & vbCrLf & vbCrLf & "Time:" & vbCrLf & objItem.Hour & " : " & objItem.Minute & " : " & objItem.Second
Next
Loop
While End
【问题讨论】:
-
While End最后似乎很可疑。您的缩进表明您认为您已经在第一个While语句处开始了一个循环,但事实并非如此。整个循环写在一行中。
标签: loops vbscript nested-loops