AutoIT tut 13 : FOR … IN… NEXT

0
0
(0)

FOR … IN… NEXT

Chức năng của câu lệnh này là liệt kê các phần tử bên trong một mảng hoặc một tập hợp object (đối tượng) COM (component object model)

Cú pháp


For  <var>  In  <expression>

                <các câu lệnh>

                ........

Next

Giải thích

<var>  :  biến sẽ được gán giá trị của từng phần tử trong <expression>

<expression>  :  một đối tượng COM hoặc một mảng có ít nhất một phần tử.

Chú ý

Ø       Nếu <expression> là một tập hợp object không có phần tử, thì đoạn script sẽ bỏ qua việc lặp và <var> sẽ chứa một chuỗi rỗng.

Ø       Nếu <expression> không phải là object, cũng không phải là mảng, thì đoạn script sẽ dừng với một lỗi được thông báo, trừ khi bạn có sử dụng trình điều khiển COM Error.

Ø       Giả sử trường hợp <expression> bạn dùng là một mảng và bạn có thay đổi giá trị của các phần tử trong mảng khi For…In đang chạy, thì giá trị đó sẽ không được ánh xạ ngay vào trong mảng.  Chỉ khi For… In kết thúc thì thay đổi đó mới có hiệu lực.

Ø       Vòng lặp For…In cho phép lồng vào nhau.

Ví dụ 1


Global $array[4]

   $array[0]="w"

   $array[1]="x"

   $array[2]="y"

   $array[3]="z"

   For $element In $array

       MsgBox(0,"Current $array item",$element)

   Next

Ví dụ 2

Đoạn mã sau sẽ thông báo cho bạn biết các cửa sổ Explorer nào đang mở

$oShell = ObjCreate("shell.application")

$oShellWindows=$oShell.windows

 

if Isobj($oShellWindows) then

  $string=""

  for $Window in $oShellWindows

    $String = $String & $Window.LocationName & @CRLF

next

 

  msgbox(0,"","You have the following windows open:" & @CRLF & $String)

else

  msgbox(0,"","you have no open shell windows.")

endif

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

Leave A Reply

Your email address will not be published.