Cộng đồng AutoIT Việt - Autoitviet.forumvi.com
Chào mừng bạn đến với cộng đồng AutoIT Việt, hãy đăng ký một nick để cùng tham gia thảo luận nhé ^^!

Join the forum, it's quick and easy

Cộng đồng AutoIT Việt - Autoitviet.forumvi.com
Chào mừng bạn đến với cộng đồng AutoIT Việt, hãy đăng ký một nick để cùng tham gia thảo luận nhé ^^!
Cộng đồng AutoIT Việt - Autoitviet.forumvi.com
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.
Latest topics
» [Code] Kiểm tra kết nối mạng
by jameseshell Fri Jul 31, 2015 3:29 pm

» AutoClick không chiếm chuột
by jameseshell Fri Jul 31, 2015 9:58 am

» [Sorf] Connect/Disconet Button
by thanhhan31 Fri Jun 26, 2015 3:56 am

» Giới thiệu ngôn ngữ lập trình Autoit
by vanhoa1402 Mon Jun 08, 2015 12:40 am

» [Code] Đếm ngược thời gian
by satoh290801 Sat Jun 06, 2015 10:11 am

» Debug game online
by cheater Mon Jun 01, 2015 3:15 pm

» [Thắc Mắc] cách nhập xuất dữ liệu
by cadilacst Mon Apr 27, 2015 7:14 am

» [Code] Auto Win 2c6f td1 - sv HN
by Hades Wed Jan 14, 2015 5:41 am

» [Hỏi] AutoIt với CSDL online?
by todzin Wed Nov 19, 2014 11:14 pm

» [Hỏi] Một số vấn đề về Copy & Paste file bằng ứng dụng thứ 3 (Everything.exe)
by aloatiso Tue Nov 11, 2014 10:31 pm

» Click theo điểm ảnh !
by nhatdaica055 Wed Oct 15, 2014 5:17 pm

» Nội quy diễn đàn
by lethusinh01 Fri Sep 12, 2014 3:59 am

» Hide Windows !!!
by Sweetsica Fri Aug 08, 2014 2:31 am

» Cài đặt , sử dụng và biên dịch Autoit
by mankichi Thu Jul 24, 2014 5:11 am

» Tuyển mod cho diễn đàn
by huynhlamid Fri Jan 17, 2014 3:36 pm

» PixelSearch - Quét (hay kiểm tra) điểm ảnh
by vanthang Fri Jan 17, 2014 5:49 am

» Thiệp Cực Đẹp Tặng Người Yêu !!!
by Nokia3G Mon Dec 23, 2013 12:50 pm

» Lấy đường dẫn của phần mềm chạy ngầm
by cuongkoken Sat Dec 21, 2013 1:25 am

» Xin Admin giup do
by xlove_bmt Wed Dec 18, 2013 6:40 am

» [Hỏi] Cần pro chỉ làm trainer game!
by quytucaca Wed May 29, 2013 7:43 am


Macro trong Autoit

Go down

Macro trong Autoit Empty Macro trong Autoit

Bài gửi by Admin Sun Oct 09, 2011 11:27 am

__Nói đến macro nếu những ai đã biết thì có thể
thấy rõ tính tiện dụng của nó .Những ai chưa biết thì mình xin giới
thiệu Macro là gì và cách sử dụng macro ở đây
(Bài này chủ yếu dành
cho những bạn mới làm quen với autoit .Mình cũng mới làm quen với
autoit nên kiến thức còn hạn hẹp chỉ viết theo những gì mình hiểu,có gì
sai sót mong các pro chỉnh sửa giúp)
Macro là những biến đặc biệt
của autoit và mang kí tự @ đầu tiên (ví dụ :@error , @CRLF ...).Mỗi 1
macro mang 1 giá trị lưu trữ riêng .Đặc điểm của nó là ngắn gọn + dễ
nhớ + dễ sử dụng .Trong autoit Macro được chia ra làm 4 loại :
1.Related Marco
**@error :Trả lại lỗi của chương trình
-Ví dụ :Trong inputbox
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả


  1. #cs
  2. @error=1 :Nút cancel đã được ấn
  3. @error=2 :Hết thời gian đợi để bấm
  4. @error=3 :Hộp thoại k xuất hiện
  5. @error=4 :Hộp thoại inputbox k đc phép hiện thị
  6. @error=5 :Thông số truyền k hợp lệ
  7. @error=0 : Tình trạng bình thường k có gì xảy ra
  8. #ce
  9. InputBox(0,"","")
  10. If @error=1 Then
  11. MsgBox(0,'Thông báo',"Nút cancel đã đc ấn",3)
  12. EndIf






**@ScriptName :Trả về tên chương trình hiện tại
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. MsgBox(0,"Tên file là : ",@ScriptName)





**@ScriptDir :Đường dẫn tới thư mục chương trình hiện tại
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. MsgBox(0,"Đường dẫn : ",@ScriptDir)





**@ScriptFullPath: Đường dẫn đầy đủ tới chương trình hiện tại (=@ScriptDir + @ScriptName )
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. MsgBox(0,"Đường dẫn đầy đủ: ",@ScriptFullPath)





**@ScriptLineNumber : Dòng hiện tại mang marco này
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. MsgBox(0,"LineNumber : ",@ScriptLineNumber)





**@WorkingDir :Thư mục hiện tại đang làm việc
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. MsgBox(0,"Đường dẫn thư mục : ",@WorkingDir)





**@AutoItExe : Lấy đường dẫn đầy đủ của file autoit
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. MsgBox(0,"full path : ",@AutoItExe)





**@AutoItPID :PID của các tiến trình đang chạy của autoit
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. MsgBox(0,"PID : ",@AutoItPID)





**@AutoItVersion :Phiên bản của autoit đang cài đặt
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. MsgBox(0,"Version : ",@AutoItVersion)





**@AutoItX64: Trả về giá trị nếu đang chạy theo phiên bản x64
-Về 1 nếu đúng ,ngược lại là 0

**@HotKeyPressed : Phím nóng cuối cùng đc ấn
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. HotKeySet("{F3}","exitt") ;tạo phím nóng gọi tắt 1 hàm
  2. Do ;tạo vòng lặp vô tận để chương trình k out
  3. ToolTip("Test",0,0)
  4. Until 0

  5. Func exitt() ;tạo hàm
  6. $hotkey=@HotKeyPressed
  7. MsgBox(0,"",$hotkey)
  8. Exit
  9. EndFunc






**@compiled :Trả lại khả năng biên dịch thành công hay k của chương trình
-Trả về 0 nếu chưa biên dịch
-Trả về 1 nếu đã biên dịch thành công
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. MsgBox(0,"",@compiled)
  2. if @Compiled=1 Then
  3. MsgBox(0,"Thông Báo","Đã dịch thành công")
  4. EndIf
  5. ;Biên dịch ra là đc ^^





**@exitCode :Lấy mã đc trả lại bởi hàm exit(thoát)
@exitCode =0 :hàm Exit chạy bình thường(mặc định)
@exitCode = 1:Chương trình bị thoát mà do 1 nguyên nhân nào đó

**@EXITMETHOD :Nhận hình thức đi theo của hàm OnAutoItExitRegister (hàm giúp gọi 1 hàm khác khi thoát chương trình)
@EXITMETHOD =0 :Tự nhiên thoát hàm
@EXITMETHOD =1 :Thoát do chương trình chỉ định
@EXITMETHOD =2 :Thoát bằng nút icon trên khay hệ thống
@EXITMETHOD =3 :Thoát vì người dùng logoff hệ thống
@EXITMETHOD =4 :Thoát vì người dùng tắt máy
(mã trả lại có thể dùng hàm @exitcode)

**@extended :Mở rộng sự hoạt động của các hàm
Ví dụ:
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. $text = StringReplace("autoit viet net", " ", "-") ;thay thế kí tự "" trong text bằng "-"
  2. $textreplace = @extended
  3. MsgBox(0, "Văn bản đã thay thế", $text)
  4. MsgBox(0, "Số kí tự đã thay thế", $textreplace)





**@NumParams : Số tham số được truyền khi gọi hàm
Ví dụ :
test("autoit",".net")
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả


  1. Func test($a,$b)
  2. $numparam=@NumParams
  3. MsgBox(0,$a,$b)
  4. MsgBox(0,"Số tham số được truyền",$numparam)
  5. EndFunc





**@COM_EventObj :Đối tượng COM sự kiện đang được truyền vào

**@GUI_CtrlId :ControlID của GUI cuối cùng được click (chỉ có tác dụng trong chức năng GUICtrlSetOnEvent.

**@GUI_CtrlHandle :Handle của GUI cuối cùng đc click(chỉ có tác dụng trong chức năng GUICtrlSetOnEvent.

**@GUI_WinHandle :GUI handle cuối cùng đc click, chỉ áp dụng cho chế độ Event trên GUI

Những marco dưới đây đc sử dụng cho các hàm WinSetState, Run, RunWait, FileCreateShortcut và FileGetShortcut :

**@SW_DISABLE :Vô hiệu hóa window
**@SW_ENABLE :Hủy window đã vô hiệu hóa
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. Run ("Notepad") ;chạy notepad trong máy
  2. WinWaitActive("Untitled - Notepad") ;chờ đến khi notepad đc gọi
  3. Sleep(1000) ;dừng 1s
  4. WinSetState("Untitled - Notepad","",@SW_DISABLE ) ;vô hiệu hóa notepad
  5. Sleep(7000) ;dừng 7s
  6. WinSetState("Untitled - Notepad","",@SW_ENABLE ) ;hủy vô hiệu hóa
  7. ;Ngoài ra còn có thể dùng để vô hiệu hóa các nút ấn ,check box ,edit ...trong GUI





**@SW_HIDE :Ẩn cửa sổ
**@SW_Show :Hiện của sổ đang ẩn
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. HotKeySet("{F1}","hidewin") ;ấn F1 chạy hàm ẩn window
  2. HotKeySet("{F2}","showwin") ;F2 để hiện
  3. HotKeySet("{F3}","thoat") ;F3 để thoát

  4. Run ("Notepad") ;chạy notepad
  5. WinWaitActive("Untitled - Notepad")
  6. WinMinimizeAll() ;thu nhỏ tất cả cửa sổ

  7. Do
  8. ToolTip("test",0,0) ;tạo vòng lặp giữ chương trình k thoát
  9. Until 0

  10. Func thoat()
  11. Exit
  12. EndFunc

  13. Func Hidewin()
  14. WinSetState("Untitled - Notepad","",@SW_HIDE )
  15. EndFunc

  16. Func showwin()
  17. WinSetState("Untitled - Notepad","",@SW_SHOW )
  18. EndFunc





**@SW_LOCK:Khóa của sổ
**@SW_UNLOCK:Mở khóa cửa sổ đã khóa
(Tương tự ^^)

**@SW_MINIMIZE :Thu nhỏ của sổ
**@SW_MAXIMIZE :Phóng to hết cỡ cửa sổ
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. Run ("Notepad")
  2. WinWaitActive("Untitled - Notepad")
  3. Sleep(1000)
  4. WinSetState("Untitled - Notepad","",@SW_MINIMIZE )
  5. Sleep(4000)
  6. WinSetState("Untitled - Notepad","",@SW_MAXIMIZE )






**@SW_RESTORE:Phục hồi tình trạng trước đó của cửa sổ

**@SW_SHOWDEFAULT:Hiện cửa sổ ở chế độ mặc định

**@SW_SHOWMAXIMIZED :Hiện cửa sổ ở chế độ phóng to

**@SW_SHOWMINIMIZED :Hiện cửa sổ ở chế độ thu nhỏ

**@TrayIconFlashing:trả lại 1 nếu "tray icon" đang "flash", nếu ko trả lại 0

**@TRAY_ID:địa chỉ của "tray item" cuối cùng đc sử dụng

**@TrayIconVisible :Trả về 1 nếu icon đc nhìn thấy ,về 0 nếu icon ẩn

**@CRLF dùng để xuống dòng(=@cr + @lf)
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. $a="Autoit"
  2. $b="Việt"
  3. MsgBox(0,"",$a & @CRLF & $b)






**@TAB :Kí tự Tab
-Ví dụ :
Bật/Tắt Số Dòng | Hiện/Ẩn Code | Chọn tất cả

  1. MsgBox(0,"","Autoit" & @TAB & "Việt")
QuiT - 72ls
Admin
Admin
Admin

Tổng số bài gửi : 63
Join date : 16/08/2011

https://autoitviet.forumvi.com

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết