积极答复者
循环 for i = 1 to 1什么意思?

问题
-
我看到一篇代码,里面有个循环是 for i =1 to 1,我不知道为什么这里要用循环,直接取不一样吗?
代码:
Private Function MyFindWindowEdit() As Long '父窗口类名数组 Dim A_szClassName(2) As String A_szClassName(0) = "SpLoginDialog" A_szClassName(1) = "Edit" '父窗口标题数组 Dim A_szWinName(2) As String A_szWinName(0) = "Login" A_szWinName(1) = "" '首先求得顶级父窗口 Dim hLastWin As Long hLastWin = FindWindow(A_szClassName(0), A_szWinName(0)) '逐次用FindWindowEx函数求出各级子窗口 For i = 1 To 1 hLastWin = FindWindowEx(hLastWin, 0, A_szClassName(i), A_szWinName(i)) Next i MyFindWindowEdit = hLastWin End Function
代码中这段
For i = 1 To 1
hLastWin = FindWindowEx(hLastWin, 0, A_szClassName(i), A_szWinName(i))
Next i干嘛不直接写成这样
hLastWin = FindWindowEx(hLastWin, 0, A_szClassName(1), A_szWinName(1))
答案
-
你好
For i = 1 To 1
是說
你定義你這個LOOP 的 起始值 I = 1
之後做到 這個值到達那一個數值是停下 來 E.G. 你的是 TO 1
所以你的FOR LOOP 應該只會執行一次的
你說得對
其實和直接執行
hLastWin = FindWindowEx(hLastWin, 0, A_szClassName(1), A_szWinName(1))
一樣的
詳情可以參考以下URL
http://msdn.microsoft.com/zh-cn/library/5z06z1kb.aspx
Please correct me if my concept is wrong
Chi- 已标记为答案 ChiYauModerator 2011年4月20日 21:03
-
A_szClassName和A_szWinName是数组,可能是考虑到如果数组中元素较多的时候需要逐个取的情况吧
本帖内容仅供参考,没有任何保证. This post is provided without any warranty.- 已标记为答案 ChiYauModerator 2011年4月20日 21:03
全部回复
-
你好
For i = 1 To 1
是說
你定義你這個LOOP 的 起始值 I = 1
之後做到 這個值到達那一個數值是停下 來 E.G. 你的是 TO 1
所以你的FOR LOOP 應該只會執行一次的
你說得對
其實和直接執行
hLastWin = FindWindowEx(hLastWin, 0, A_szClassName(1), A_szWinName(1))
一樣的
詳情可以參考以下URL
http://msdn.microsoft.com/zh-cn/library/5z06z1kb.aspx
Please correct me if my concept is wrong
Chi- 已标记为答案 ChiYauModerator 2011年4月20日 21:03
-
A_szClassName和A_szWinName是数组,可能是考虑到如果数组中元素较多的时候需要逐个取的情况吧
本帖内容仅供参考,没有任何保证. This post is provided without any warranty.- 已标记为答案 ChiYauModerator 2011年4月20日 21:03