Viết Code trong AutoIT Như mình đã nói giao diện soạn thảo của AutoIT rất đơn giản, nên trong bài này mình chỉ lưu ý các bạn cách soạn thảo trong AutoIT và bỏ qua phần giới Chương Trình
Trang 1Viết Code trong AutoIT
Như mình đã nói giao diện soạn thảo của AutoIT rất đơn giản, nên trong bài này mình chỉ lưu ý các bạn cách soạn thảo trong AutoIT và bỏ qua phần giới
Chương Trình soạn thảo (lập trình, viết code) của AutoIT là SciTE4AutoIt3, 1 phiên bản được hiệu chỉnh lại từ SciTE 1.76, nhưng trụi mình có thể sử dụng bất kỳ trình soạn thảo văn bản nào cũng được, miễn sao khi lưu để đuôi là
*.AU3 thì ok Muốn xem thông tin (Tiếng Anh) về trình soạn thảo SciTE4AutoIt3 thì có thể dùng Link dưới:
- Trình soạn thảo SciTE4AutoIt3 cho phép thao tác nhiều File *.au3 cùng 1 lúc, nội dung mỗi File sẽ được nạp lên 1 File tạm và hiển thị trong 1 Tabs, nên trong lúc soạn thảo nếu bạn có lỡ xóa File AU3 thì cũng đừng lo lắng, chỉ cần Bấm Save 1 cái là File bị bất sẽ có lại
- Để tạo dòng chú thích cho Code trong AutoIT bạn có thể dùng 2 cách sau: C1 Chú thích trên nhiều dòng: dùng từ khóa #cs ở trên dòng đầu tiên và #ce ở
C2 Chú thích trên 1 dòng: dùng ký tự Chấm Phẩy [ ; ] hoặc dùng dấu Trừ [ - ] bên vùng Numlock
- Điều khiếng AutoIT làm mình rất hài lòng đó là khả năng Việt Hóa của nó, nhưng trước hết phải chỉnh lại 1 chút mới có thể dùng: Vào File => Chọn Encoding => Chọn UTF-8 With Bom
- Có thể bạn phải tắt mở SciTE4AutoIt3 1 hoặc 2 lần, thì tùy chọn này mới được lưu lại
Rồi dùng Unikey 4.0 với bảng mã Unicode, thế là có thể đánh Tiếng Việt bình thường như Microsoft Word
- Sau khi soạn thảo xong thì Dịch (Compile) thành EXE, cái này tụi mình đã có dịp biết trong Bài 2, giờ mình chỉ nói thêm 1 chút về cách Conpile : C1 Cách nhanh: R-Click lên File cần Compile chọn Compile Script là ok
Vào Start Menu => (All) Programs => AutoIT => Compile Script to exe Mình xin lưu ý các bạn mới làm quen với lập trình 1 vài vấn đề sau:
Thường trong bất kỳ trình soạn thảo nào cũng có chức năng Tìm Kiếm (Find) và Thay Thế (Replace), 2 chức năng này rất hữu ích chúng có thể
Trang 2giúp tụi mình Tìm, Kiểm Tra hoặc Đổi tên 1 hàm, 1 biến dù Hàm (hay Biến) đó ở bất kỳ đâu
Ngoài ra trong các thông báo lỗi thường kèm theo mã số của dòng Code
có lỗi, bằng chức năng Nhảy Dòng (Go To) bạn có thể chuyển đến dòng
đó 1 cách nhanh chóng giúp tiết kiệm thời gian
Vì SciTE4AutoIt3 vừa chạy vừa kiểm tra lỗi, nên việc gặp lỗi khi chạy thử là hiển nhiên Do đó tụi mình cần phải có các câu lệnh hay hàm mang tính chất Delay trong vòng lặp để tránh treo máy, ví dụ như MsgBox(), Sleep(),
Những phím tắt tụi mình sẽ cần trong AutoIT:
F1 - Mở File trợ giúp có nội dung Tiếng Anh, ráng gặm cái này nha
F5 - Chạy thử chương trình, việc chạy thử được thực hiện trên File tạm của SciTE4AutoIt3
Ctrl+F - Tìm 1 đoạn code Tùy chọn Direction, cho phép tìm từ trên xuống hoặc từ dưới lên
Ctrl+G - Nhảy dòng Thông tin về Dòng và Cột có thể xem bên dưới thanh Status Bar
Ctrl+H - Thay thế đoạn code Đoạn code bị thay thế có thể Undo bình thường không phải lo mất Code ngoài ý muốn
MỘT SỐ KHÁC BIỆT
- Bất kỳ ngôn ngữ nào cũng có những đặt trưng riêng của mình, AutoIT cũng không ngoại lệ Những đặt điểm mình để cập dưới đây là những phần cơ bản thường thấy trong các ngôn ngữ khác Còn những cái nâng cao thì chưa cần tới, vì tụi mình toàn là người mới chưa xài tụi nó đâu, với lại mình cũng không rành lỡ nói sai thì phiền lém
Khai Báo Biến- Trong AutoIT biến được chia làm 3 loại: Dim, Global, Local Cách dùng chúng tương tự như trong Visual Basic Trong đó: Local: là biến khu vục, biến loại này chỉ có hiệu lực trong 1 Hàm, nơi mà
Global: là dạng biến toàn cục, có hiệu lực sử dụng trong toàn bộ chương trình, cho dù nó được tạo ra ở bất kỳ đâu
Trang 3Dim: Nếu tên biến loại này không trùng với biến Toàn Cục (Global) thì biến được xem là biến khi vực (Local)
- Khi biến được tạo ra mà không có giá trị kèm theo ta hiểu ngầm biến
đó sẽ chứa 1 chuỗi rỗng và chuỗi rỗng khi chuyển thành số sẽ là 0
- Nếu 1 biến loại Local không thuộc bất kỳ 1 Hàm nào thì nó được xem
Ví dụ:
Local $var="123"
Func abc()
MsgBox(0,"",$var)
EndFunc
abc()
- Bạn có thể khai báo nhiều biến trên cùng 1 dòng kèm theo giá trị ban đâu
Ví dụ:
Dim $a, $b = 10, $c = "abc"
- Hoặc thực hiện khai báo mà không cần phân loại bằng Dim, Local hay Global Nếu tên biến chưa tồn tại thì biến sẽ tự được tạo với tính chất của Local Lưu ý các bạn là cách khai báo này chỉ thực hiện được với Phép Gán của biến thường, không thực hiện được cho Mảng
Ví dụ:
$a = 2
$var = $a + 5 ;Biến $var sẽ được khởi tạo với giá trị bằng 7
$array[2]=7 ;Chương trình sẽ báo lỗi ở đây
- Giá Trị của Biến có thể được cố định khi tạo bằng từ khóa Const
- Tên biến không có sự phần biệt Hoa hay Thường, tức là $var hay $VaR
Quản Lý Mảng- Đối với khai báo Mảng bạn phải chỉ định số lượng phần
Trang 4tử khi tạo biến và phần từ đầu tiên có mã số là 0
Ví dụ:
Dim $array[7] = [1,2,"a","b"] ;Mảng 1 chiếu
Dim $arrayM[2][5] = [[1,2], ["a","b","c"]] ;Mảng 2 chiều
- Khi muốn thay đối số lương phần tử của Mảng bạn phải dùng Hàm ReDim()
Ví dụ: ReDim $array[4] ;Số phần tử sẽ giảm xuống 4
- Để kiểm tra xem Mảng có bao nhiêu phần tử, bạn dùng Hàm UBound()
Ví dụ:
$var = UBound($array,1) ;$var sẽ bằng 4 $varM = UBound($arrayM,2)
;$var sẽ bằng 5 (chiều thứ 2)
Các Phép Toán
== So Sánh Bằng If $x == 7 Then Exit
- Hai toán tử trên không có sự phân biệt nhiều khi được dùng trong các cấu trúc điều kiện, có thể thay thế cho nhau
$x += 2 ;($x sẽ bằng 7)
$x -= 2 ;($x sẽ bằng 3)
$x *= 2 ;($x sẽ bằng 10)
$x /= 2 ;($x sẽ bằng 2.5)
&= Nối dần
$x = "năm"
$x &= 2 ;($x sẽ bằng
"năm2")
Trang 5Hàm Toán Học- Để hỗ trợ cho 1 số cách tính toán thông thường AutoIT
Ví dụ: $var = Mod(7,5) ;$var sẽ bằng 2
Ví dụ: $var = Int(7.52) ;$var sẽ bằng 7
Ví dụ:
$var = Round(7.524316,2) ;$var sẽ bằng 7.52 $var = Round(7.524316,5)
;$var sẽ bằng 7.52432