Ữ Ậ
ấ ề ộ ố ệ I ! ƯỜ ư
ủ ế
ấ
s u t m và t biên t i!> ẽ ố ự ư ầ ễ ể di n ^^ - có ch nào ko h u xin th l ự ễ ứ ỗ ỗ ỉ
ộ
ớ t form ắ
NGÔN NG L P TRÌNH DÀNH CHO M I NG
Ọ
Chương I : Lập trình cơ bản 1. M ch ng trình AutoIT đ l p trình ể ậ Tên ch ng trình : SciTe Script Editor ươ Giao di n nh sau : ư ệ 1 – Thanh menu
2 – Thanh công cụ
ạ
3- Khu v c so n
ự
th oả
4 – Thanh tr ng thái ạ ng trình đ n gi n 2. M t ch
ộ ươ ả t có d u trong AutoIT, b n hãy làm nh sau : ơ
ấ ể ể ị ế ệ ạ Đ hi n th Ti ng Vi
ư
File > Encoding > UTF – 8 with BOM ho c UCS-2 Big Endian ặ ậ L p trình nào ^^
☺ L u ý : ----------------------------------------------------------------------------- ư - B t c ch ng trình AutoIt (vi t là auto) nào đ u ph i l u l ấ ứ ươ t t
ế ắ ả ư ạ ề ạ
i (đ nh d ng ị *.au3), sau đó m i ch y đ c. Thao tác l u : ớ ư ạ ượ
ọ ng trình, n F5 ( gi ng vb6 nh ^^) n vào icon Save >> Ch n n i l u >> Save
ố ơ ư
ấ ử ươ ể ạ ỉ ấ
- Đ ch y th ch
-------------------------------------------------------------------------------------- ự ị ế i, bây gi t 100% ^^")
ng trình nh c a b n đã hình thành ! • Gõ vào dòng sau trong khu v c 3 :
Msgbox (0,"Thông báo","Hi n th ti ng vi
Save nó l
ờ ấ ể
n F5 đ ch y, 1 ch
ể ạ ạ ệ
ươ ỏ ủ ạ ng trình hi n th Unicode r t chu n, không b l i nh vb6 ^^. ươ ị ỗ ể ấ ẩ ị ư Tuy t v i, ch
ệ ờ
• Chuy n thành File exe :
ể ấ ề ư ứ ả ậ ộ ế ả Có r t nhi u cách, nh ng có m t cách r t đ n gi n là truy c p đ n th m c ch a file
ế
ấ ơ
*.au3 , nháy ph i vào file này và ch n Complite Script . N u ko có l
đã có 1 file *.exe hoàn ch nh rùi ! Ti n l i h n là ch có 1 file duy nh t ! ư ụ
i gì thì l p t c b n
ậ ứ ạ
ỗ
ấ ọ
ệ ợ ơ ỉ ỉ Đây là file vidu.au3 Đây là file vidu.exe ☻ K t thúc :
ế - L nh m thông báo đ n gi n: ệ ả ở ơ Msgbox ([ki u thông báo 0~6],“[Tiêu đ ]”,“[Text]”) ể ề ồ ạ ạ ế ồ ề ổ B n hãy vào AutoIt script r i gõ dòng sau vào :
Run (“notepad”)
Câu này có nghĩa là Ch y notepad.exe trong máy c a b n
ủ ạ
R i gõ ti p :
WinWaitActive ( "Untitled - Notepad") ; không dc đ i tiêu đ !
Xem thêm (r t quan tr ng !)
ấ
Có nghĩa là ch c a s notepad ọ
ờ ử ổ ế ở ử ố ể
ợ ư ồ ạ ờ ử ế ư ệ ẹ ậ Gõ ti p dòng này vào :
Send("This is some text.")
Có nghĩa là : G i dòng ch trên cho notepad đang m !
ữ
Và đây là dòng cu i cùng
WinClose ( "Untitled - Notepad")
Dùng đ đóng Notepad.
T ng h p, ta có code nh sau :
run ("notepad") ; ch y notepad
WinWaitActive ( "Untitled - Notepad") ;ch notepad
Send("This is some text.") ; g i text đ n notepad
WinClose ( "Untitled - Notepad") ; đóng notepad
; Thao tác nhanh nh đi n x t v y ^^
; là chú thích ! Bây gi t : ạ ẽ ấ ệ ả ầ ượ n F5, b n s th y các công vi c x y ra l n l
ờ ấ
ở
ở ể ữ - M notepad
- M notepad có tiêu đ là Utitled – notepad
- Gõ dòng ch This is some text vào notepad
- Thoát notepad, hi n ra b ng tùy ch n thoát ệ ả ọ ả ư ỉ ớ ự
ỉ ề ấ Qu đúng nh tên g i ! AutoIT đã giúp
ọ
ớ
chúng ta th c hi n Thao tác v i
ệ
notepad ch trong 1s mà ch v i vài
dòng code d hi u ! Đi u này r t khó
ễ ể
v i các ngôn ng nh vb6,…
ữ ư
ớ ỗ ẹ ậ ấ ạ ư
ệ ả ệ (Ch p, cái ch “Thí í some text” là do tui b t unikey ^^)
B n th y hay ch a ? Th m i là Auto !
ế ớ
☺ Cách dùng hi u qu l nh WinwaitActive :
B n m ch ng trình đó lên trong windows, ví d notepad : ở ươ ụ ạ ữ ữ ề ẽ ị Chép dòng ch có khoanh tròn tiêu đ - vào đâu đó. Dòng ch đó s dùng cho v trí này
trong AutoIt: ề ặ ạ ườ ẵ ủ
i” chép ^^, hãy dùng công c Windows Info có s n c a
ụ -N u tiêu đ dài ho c b n “l
ế
AutoIt
B c 1 : ch y notepad
ạ
ướ B c 2 : Ch y windows info ướ ạ ư ỏ Đ a con tr
chu t vào
ộ
tiêu đề
notepad, sau
đó copy từ
ch này ! ỗ ng trình : ươ ươ
ươ run (“[tên ch
ẫ
ng d n ch ng trình]”)
ng trình ☻ K t thúc :
ế
• Câu l nh đ ch y ch
ệ
* tên ch
• Câu l nh đ ch ch ặ
ng trình ho c đ
ng trình đó : ể ạ
ươ
ể ờ ươ ệ ườ
WinWaitActive (“[tiêu đ ]”)ề ng trình đó : ế ử ố send (“[text mu n g i]”) ự cho flag là 1
ng trình đó : • Câu l nh đ g i text đ n ch
ệ
ươ
ể ử
n u mu n g i kí t
“#”, gõ l nh sau :
ố ử
ệ
ế
Send (“# d u thăng”,1) ---
ấ
• Câu l nh đ đóng ch
ươ
ể ệ winclose (“[tiêu đ ]”)ề ọ ậ ữ ả ắ ố ữ ữ ắ ả ồ ế
ừ ừ ẽ ượ ả
ủ ứ ẽ ố ọ ể
ắ
ự [H c l p trình thì không th không n m v ng căn b n, mà mu n
ế
n m v ng căn b n thì ph i n m v ng lí thuy t đã, r i ki n
c c ng c qua th c hành, h c t t , s vào ^^]
th c s đ - Tui s đi nhanh ph n này, nh ng ko b sót các ph n quan tr ng nh t ! ư ỏ ọ ẽ ấ ầ ầ • Khai báo bi nế : Các bi n đ
(ph m vi s d ng : global > local > dim) khóa Dim, local và global: ế ượ c khai báo và t o ra v i các t
ạ ớ ừ Dim $var1 ử ụ ạ Ho c b n cũng có th khai báo nhi u bi n cùng m t lúc: ặ ạ ề ế ể ộ Dim $var1, $myvariable khai ể ỉ ế ộ ị không c nầ khai báo (nh ngư Tui khuy n kích ế $Var1 = "abc" • Khai báo h ngằ (constants) B n cũng có th ch đ nh m t bi n mà
ạ
báo tr c). ướ Const $const1 = 1, $const2 = 12 Constants có th đ c công b và s d ng ể ượ ư ố ử ụ Enum nh sau: Enum $const1 = 1, $const2, $const3 ; 1, 2, 3
Enum STEP 2 $incr0, $incr2, $incr4 ; 0, 2, 4
Enum STEP *2 $mult1, $mult2, $mult4 ; 1, 2, 4 Constants đ t khóa nh : ượ c công b và t o ra b ng cách s d ng Const
ằ ử ụ ạ ố ừ ư ầ ủ ỗ ế ố ế ạ ạ ộ ộ ộ ỡ ứ
c truy c p b i m t s ch m c.
ể ượ ữ ệ
ộ ố ỉ ụ ế ậ ở Ví d : ụ ố ư ữ ữ ạ ạ
ể ử ụ ế ả : "A", "U", "T", "O", "I", "T" và "3".
ự
t đ làm nh th , nh ng b ng cách s d ng m t Array là
ệ ể ư ế ử ụ ư ằ ộ Hãy nói b n mu n l u tr nh ng lo t ký t
B n có th s d ng b y các bi n riêng bi
hi u qu h n: ả ơ ạ
ệ $Array [0] = "A"
$Array [1] = "U"
.. vv.
$Array [6] = "3" Đ truy c p m t giá tr c th trong m t Array, b n ch c n bi t các ch m c s : ị ụ ể ỉ ầ ể ậ ạ ộ ộ ế ỉ ụ ố $MyChar = $Array [2] Các k t qu này trong $MyChar có ch a ch "T" ứ ữ ế ả ỉ ụ ố ế ở ể ể ặ ạ ộ Các ch m c s cũng có th đ
ế
ể ượ
ph c t p cách đ ch đ nh ho c truy c p vào m t y u t
ặ c thay th b i m t bi n ho c m t bi u, do đó, b n có th xây d ng
ự
ộ
trong m ng đó.
ả ộ ế ố ứ ạ ể ỉ ậ ị Arrays cũng có th đ c nhi u chi u, khi b n s d ng nhi u lo t các ch m c s , nh : ể ượ ạ ử ụ ỉ ụ ố ư ề ề ề ạ $Array[0][0]="Upper-Left"
$Array[1][0]="Lower-Left"
$Array[0][1]="Upper-Right"
$Array[1][1]="Lower-Right" (Nh ng giá tr này ch là ví d ) ữ ụ ỉ ị c Array. T ng s các m c có th không đ c l n h n 2 ạ ộ ướ ụ ể ổ ố ượ ớ ơ B n có th s d ng đ n 64 trong m t kích th
ế
ể ử ụ
^ 24 (16 777 216). c khi b n có th b t đ u s d ng Arrays trong t p l nh c a b n, b n ph i xác đ nh bounds c a h ủ ạ ậ ệ ủ ọ ạ ả ị ể ắ ầ ử ụ
khóa. Tr
ướ
b ng cách s d ng
ằ ạ
ử ụ ' Dim ' t ừ ượ ậ ằ ộ ỹ ộ
ng có th ch a b t c th gì t ừ ộ ố ữ ị ộ ị Nó đã đ
c cho r ng ch ch a m t Array
ỉ ứ
trong AutoIt Ngôn ng đ a ph
m t Array-AutoIt cũng có th ch a khác nhau lo i, th m chí khác Arrays: ư ệ ủ
ể ứ ấ ứ ứ
ạ ươ
ể ứ ậ ộ $Array[0]=1
$Array[1]=true
$Array[2]="Text"
$Array[3]=$AnotherArray c ch t ch trong AutoIt. Tuy nhiên, nó là ị ấ ượ ẽ ặ để
t là vi c s d ng m t Bên trong m t m ng Array ệ ả ặ ộ Đi u này đã b c m không đ
ề
k t h p khác nhau trong m t datatypes Array. Đ c bi
ộ
ế ợ
nghiêm s nh h ệ ử ụ
ng đ n vi c th c hi n t c đ c a b n t p l nh. ệ ố ộ ủ ạ ậ ệ ẽ ả ưở ự ế ệ ☻ K t thúc
ế ế ế ị ủ ằ Dim $tên_bi n_1,$tên_bi n_2
ế
Const $tên_bi n_1 = [giá tr c a h ng] ằ
Ví d : Const $bien1 = 1, $bien2 = 2
ả ứ ự ả ị ả ố - Khai báo bi n : ế
- Khai báo h ng :
ụ
- Khai báo m ng Array :
ộ ề ả $tên_m ng[s th t m ng]= [giá tr m ng] ứ ạ ấ + m t chi u :
Vidu :
$mang1[0]=A
$mang1[1]=u
$mang1[2]=t
$mang1[3]=o
+ nhi u chi u : (r t ph c t p!)
ề
ề
$mang1[0][0] = 1
$mang1[0][1] = 11
$mang1[1][0] = 111
$mang1[1][1] = 1111 Toán tử Mô tả
=
+= ế ị - =
*= Gán . vd : $var1 = “Hello”
C ng thêm : $var1 += 3 (tăng giá tr cho bi n var1 thêm 3 đ n
ơ
ộ
v )ị
Tr thêm :
ừ
Nhân thêm / =
& = ố ả ^
== ỗ ố ớ ớ ặ ằ
ặ ằ
ế ế ế ả ặ ế Chia thêm
N i : dim $a
$a = “Auto”
$a &= “ It” ; k t qu a = “Auto It”
ế
Lũy th aừ
B ng (đ i v i chu i) : vd :
ằ
dim $a
$a = “hello”
if $a == “hello” then exit
end if
Khác
L n h n
ơ
ớ
Nh h n
ỏ ơ
L n h n ho c b ng
ơ
Nh h n ho c b ng
ỏ ơ
Logic và: đúng n u 2 dk đúng, sai n u 1 trong 2 sai
Logic ho c : đúng n u 1 trong 2 đúng, sai n u c hai sai
Logic Không : vd : Không 1 (sai) ộ ư ấ ấ <>
>
<
>=
<=
And
Or
Not
Đ u tiên cao nh t >> th p nh t :
ấ
( )
Not
^
* /
+ --
&
<> <=> = = <> ==
VÀ HO C Ặ
Vd: 2+4*10 = 42
(2+4)*10 = 60 ứ ế ệ • If …then … Else … End if
-----------------------------------------
if [dk TRUE] then
[l nh th c hi n n u dk đúng]
ế
ệ
ứ
ệ
else
[l nh th c hi n n u dk FALSE]
ệ
Endif Đúng là TRUE, sai là FALSE
Ví d :ụ ố ạ ậ ậ ; a = s b n gõ
ố ạ ế ; Hi n thông báo nh p đúng ậ ố ệ ạ ậ dim $a ; Khai báo bi n aế
$a = inputbox ("Nh p m t s ","Nh p 1 s b n nghĩ:")
ộ ố
if $a = "10" Then ; N u a = 10 thì
msgbox (0,"S b n gõ","B n đã nh p s 10")
ố ạ
i
else ; Ng c l
ượ ạ msgbox (0,"S b n gõ","B n đã nh p không ph i s 10
ạ ả ố ố ạ ậ ") ; Hi nệ ậ thông báo nh p sai
Endif ; K t thúc If
ế n F5 đ ch y, b n hãy t test ! ấ ể ạ ạ ự ư ữ ấ ấ t đi vi • Switch … EndSwitch
ỏ
Th c ra trong AutoIt còn có c u trúc SELECT … CASE n a, nh ng c u trúc này đòi h i
ự
ph i vi
i nhi u l n bi n, nên Tui dùng c u trúc này, ng n g n h n r t nhi u.
ề
ả ơ ấ ề ầ t l
ế ạ ế ế ấ ắ ọ ố ậ ố ạ ế
ậ ; Gán var = s b n ch n
ọ ế ơ ụ ậ ớ ế 11 đ n 20
ế ụ 1 đ n 10
ế
ừ
ố ạ
ừ
ố ạ ậ ớ ơ ậ ớ ố ạ ụ ơ ậ ớ ụ ơ ế ả ố ạ
ằ
ố ạ ậ ớ ỏ ơ ụ ặ ơ ẽ ằ ầ ể ấ
ố Ví d :ụ
dim $var ; Khai báo bi n var
$var = inputbox ("Nh p","Nh p 1 s ")
Switch Int($var)
Case 1 To 10 ; N u var t
MsgBox(0, "Ví d ", "S b n nh p l p h n 1")
Case 11 To 20 ; N u var t
MsgBox(0, "Ví d ", "S b n nh p l p h n 10")
Case 21 To 30 ;...
MsgBox(0, "Ví d ", "S b n nh p l p h n 20")
Case 31 To 40 ;..
MsgBox(0, "Ví d ", "S b n nh p l p h n 30")
Case Else ; N u var không n m trong kho ng trên
MsgBox(0, "Ví d ", "S b n nh p l p h n 40 ho c nh h n 0")
EndSwitch
Int đ l y ph n nguyên . Vidu : Int(7,36) -> s b ng 7
**Xu ng dòng :
ố - Khi mu n xu ng dòng, dùng l nh @CrLf (khác v i vb6 là vbCrLf)
ệ ố ớ ừ ế ạ ớ Dim $a
$a = “AutoIt !^^”
msgbox (0,“Xu ng dòng – lytheminh”,“Chào m ng các b n đ n v i” &
ố
@CrLf & $a) ỗ ặ **Chu i ch a ngo c kép :
ứ
- So sánh 2 code sau : ạ ế ớ "AutoIt" ^^ ' ế ạ ớ "AutoIt"^^ ” dim $a
$a = ' Chào m ng các b n đ n v i
ừ
msgbox (0,"Thông báo",$a)
Và
dim $a
$a = “Chào m ng các b n đ n v i
ừ
msgbox (0,"Thông báo",$a) c, còn code 2 ị ứ ư ạ ượ ế ứ ổ ' ườ ặ ủ ụ ố ổ Cùng 1 code, cùng 1 ch c năng là hi n th thông báo, nh ng code 1 ch y đ
ể
ko ch y dc !
ạ
K t lu n : ta có công th c t ng quát sau :
ậ
ng “ văn b n ch a d u ngo c kép”
' văn b n bình th
ứ ấ
ả
ả
Ví d mu n hi n th câu : R ng là “lá ph i xanh” c a trái đ t
ấ
ừ
ị
ể
MsgBox(0, "Ví d ", ụ ' R ng là "lá ph i xanh" c a trái đ t ấ ') ủ ừ ổ ứ ế ấ t c u trúc kia v y (đ n gi n thôi)
ậ ả ơ Select Case <đi u ki n 1>
ề ệ ...... Case <đi u ki n 2>
ề ệ ........ Case Else ........ EndSelect Hjz, thui thì c vi
• C u trúc Select … case ấ ấ đ c th t kĩ ! ậ ạ ọ ậ ậ
ử ụ
ụ ấ
ấ • C u trúc if l ng nhau – b c thang If
ồ
C u trúc này r t hay s d ng trong AutoIt, vì v y b n hãy
ấ
C u trúc chung , xét ví d sau :
Quote : trích d nẫ #cs ----------------------------------------------------------------------------
AutoIt Version: 3.3.0.0
Author: Autoboy195
Script Function: Template AutoIt script. ng trình ở ươ ư ế ể ạ ộ ơ ạ ng ng v i các l nh sau : " & ươ ứ ạ #ce ----------------------------------------------------------------------------
; Script Start - Add your code below here
; M ch
global $a,$b,$dl ; global dùng đ khai báo bi n, nh ng ph m vi r ng h n dim
$a = "text : ch y notepad"
$b = "văn b n : ch y microsoft word"
ạ
ả
msgbox (0,"Tiny Soft","B n hãy gõ các dòng t
ệ
@Crlf & @Crlf & $a & @crlf & $b) ; xu ng dòng … đã h c rùi :D ớ
ọ ố ng trình : ") ậ ệ ể ở ươ ; nh p li u
ệ
ậ
$dl = inputbox ("Enter to here","Nh p l nh đ m ch
if $dl = "text" Then ; câu l nh 1ệ ế ệ run ("notepad") ; h t câu l nh 1
ElseIf $dl = "văn b n" ả Then ; câu l nh 2ệ run ("C:\Program Files\Microsoft Office\Office10\WINWORD.exe") ; h tế câu l nh 2ệ
Else ; ng i c l
ượ ạ msgbox (0,"Thông báo tu do'ng sau 2 giay","Không có l nh này !",2) ệ ế ng d n (path) c a word ch khác ! ế ườ ủ ở ỗ EndIf ; k t thúc
Code có th sai n u đ
ể
○ Ch y th ch
ử ươ
ạ ẫ
ng trình (F5) Sau khi n OK, word hi n ra ! ệ ấ N u gõ linh tinh thì thông báo hi n ra, sau 2s t t ! ệ ế t
ự ắ ng trình, m i bi n ch a 1 dòng text ỗ ế ứ ươ ậ ạ i, sau đó 2s t t ! ậ ậ ả
ặ ệ ỗ t
ự ắ ọ ể ế
ồ ấ ệ ệ
ệ ệ i hay không có giá tr nào th a mãn ỏ ị ○ Phân tích code
- khai báo 2 bi n (a,b) cho ch
ế
- khai báo 1 bi n ch a d li u khi nh p vào inputbox (dl)
ứ ữ ệ
ế
- hi n thông báo
ệ
- hi n input box
ệ
- x lí l nh
ệ
ử
+ N u nh p “text” thì ch y notepad
ậ
ế
+ N u nh p “văn b n” thì ch y word
ế
ạ
ậ
+ N u ko nh p j ho c nh p lung tung thì hi n thông báo l
ế
☻ ----------- Bài h c --------------
1. Khai báo bi n m i có th dùng global
ớ
2. C u trúc If l ng nhau :
If ệ ng d n ch
ẫ ươ ng trình ng trình")
ươ ể 3. l nh run ("đ
ườ
4. Timeout : th i gian đ thoát ch
ờ
ví d : msgbox (0,"","",2) tính b ng giây
ằ
ụ
H t bài ^^ ế 1 đ n 5, hãy ngh gi i lao 30’ rùi h c típ ạ ọ ừ ỉ ả ế ọ ) (gi ng ố while … do trog pascal í mà ấ ấ ệ • C u trúc While … Wend
C u trúc chung nè :
===================================
While <đi u ki n>
ề
ệ ự ệ ệ S đ cô đ ng (Nhìn là h u ngay ^^) ơ ồ ọ ỉ While ng trình ki m tra ể ươ Sai ệ ầ
ề ự ệ Đi u ề
ki n?ệ Wend ể ạ Đúng Đ u tiên ch
đi u ki n :
• N u DK đúng thì th c hi n câu
ế
l nhệ
• Quay l
đúng n a thì th c hi n câu l nh,
ự
ữ
n u sai thì thoát kh i vòng l p !
ế i ki m tra DK, n u
ế
ệ
ặ ệ
ỏ Câu l nhệ ; hi n thông báo giá tr c a i ị ủ ệ
ơ ế ị ế Ví d :ụ
Dim $i ; t o bi n i
ế
ạ
$i = 0 ; Gán i = 0
While $i <= 10 ; N u i <= 10 thì
ế
Msgbox (0,“ Giá tr c a i là”,$i)
ị ủ
$i = $i + 1 ; tăng d n bi n i lên 1 đ n v
ầ
Wend ; N u i > 10 (t c là sai đi u ki n) thì
ệ
ứ
Msgbox (0,“Thong bao”,“Vòng l p đã d ng l i vì i > 10”) ề
ặ ừ ạ ề ệ ớ ầ
ự ượ ệ ế ệ ơ ị c th c hi n và bi n i dc tăng lên 1 đ n v
ự
ệ
ấ ứ ế ệ ế ○ Phân tích code :
- …
- So sánh i v i 10 (vì i ban đ u cho là 0 rùi nên đi u ki n 0 < 10 luôn đúng )
- Nên l nh msgbox đ
- Tăng đ n 1 m c nào đ y, bi n i > 10 thì l nh sau wend dc th c hi n và k t thúc
ế
vòng l p.ặ ữ ư ạ ấ ơ C u trúc này h i khó, nh ng b n nào đã n m v ng c u trúc while … do trog pascal thì
ắ
th y chúng ko đ n n i khó ! ấ
ấ ế ỗ Hãy test code trên đ hi u thêm ! ể ể ng trình t ch ụ ộ ứ ươ ấ ắ ng trình khi nh n nút “X” đ y :D) ấ
t dc ch Và : m t ng d ng r t hay c a c u trúc trên, đó là cho phép user t
b ng cách n nút “X” ( b n c th làm 1 GUI r i không copy code sau vào form xem,
ằ
đ b n t
ố ạ ắ ủ ấ
ạ ứ ử
ấ ồ
ấ ươ while 1
if GuiGetMsg() = $GUI_EVENT_CLOSE then
exit
endif wend t form b ng nút “X” ! ố ắ ạ ằ Hãy copy code trên vào form khi b n mu n t
Trong đó : 1 t c là enable, 0 t c là disable ứ ứ ấ ấ ễ to ệ t giá tr cu i> ế ượ ị ố ự • C u trúc For … Next
C u trúc này thì d rùi :
== ===============
For <$tên bi n> = Dim $i
For $i = 1 to 5
Msgbox (0,“Day la thong bao thu”,$i)
Next
Msgbox (0,“Thong bao”, “An OK de thoat !”) == ========================================= Do ........ Until <đi u ki n>
ề ệ == =============================================== • C u trúc Do … Until (gi ng trong pascal) ố ấ
Cú pháp : DO ng trình ki m tra ể ươ ệ ầ
ề ệ ự Đúng ạ ể ế Until Đi u ề
ki n?ệ ệ ặ ỏ Sai ượ Câu l nhệ c ! Đ u tiên ch
đi u ki n :
• N u DK sai thì th c hi n câu
ế
l nhệ
i ki m tra DK, n u sai
• Quay l
ế
n a thì th c hi n câu l nh, n u
ệ
ự
ữ
đúng thì thoát kh i vòng l p !
Ng
ớ
c hoàn toàn so v i
While … Do , b n c hình dung
s đ này trong đ u là đ
ơ ồ ạ ứ
ầ ượ ấ ụ ộ Ứ
ự ộ
ặ ng trình không ch y n a thì d ng ừ ặ ẫ ạ (*) ng d ng r t hay trong “Auto” – đó là :
◘ T đ ng Click chu t trái (click chu t ph i thì thay left >> right)
ả
ộ
; Vòng l p đ auto Click
ể
Do
MouseClick(“left”)
Until 0 ; Đ n khi ch
ạ ữ
ươ
ế
; Th c ch t là l p thao tác Click, hay nói cách khác là ng u nhiên t o ra thao tác đúp
ấ
ự
chu tộ • hjhj, ai thích auto “b m máu” thì c dùng t
ơ ứ ự ấ
nhiên ^^, tui hok ch i game m y, ơ ọ ả ư ơ ủ ề ầ ả ầ ệ nh ng h c auto thì ph i ch i rùi
, trong bài GUI
M i xem qua ph n m m AutoClick v1.0 – phiên b n đ u tay c a tui
ờ
s s d ng giao di n đ đi u khi n form, t c là có label, có form, có button, có combo
ứ
ể
ẽ ử ụ
box … v.vv , giúp cho ph n m m tr nên chuyên nghi p h n
ề ể ề
ầ ệ ở ơ CODE : AutoClick phiên b n 1.0 c a autoboy195 ^^
ả ủ ộ ơ ng trình : T đ ng Click chu t đ n gi n
ả
t k : Lý Th Minh (20.2.1995) - Thanh L ng - Yên Bái ự ộ
ế ươ #cs ----------------------------------------------------------------------------
;~ Ch
ươ
;~ Thi
ế ế
;~ Autoit v3.0.0.0
#ce ---------------------------------------------------------------------------- ng trình chính ---------------- ươ ờ ứ ể ắ ầ Ấ
c tiên, rùi n F7 đ b t đ u - n ướ Ấ ấ ờ đ ng thoát") ươ ằ ố ng trình t
ự ộ
ị
ơ ủ ờ ; ------------- Ch
Global $time,$time_final ; ch a th i gian
msgbox (0,"Auto Click - autoboy195","Hãy n OK tr
F8 đ d ng")
ể ừ
$time = inputbox ("AutoTime to exit program - autoboy195","Gõ vào th i gian c a b n
ủ ạ
(tính b ng giây) mu n ch
ớ
$time_final = $time * 1000 ; vì đ n v tính là miligiay nên nhân th i gian c a user v i
1000
; ----------------------------------------------------- đ ng Click ------------------------ ể ự ộ ;----------- Hàm đ t
; AutoClick Function
Func auto() ; không có bi n nào trong hàm auto ế ặ ạ i thich gì thêm) ả ỉ Do ; L p l
MouseClick("left") ; Click (nhìn là h u, ko c n gi
Until 0 ; L p l i thao tác Click -> Nháy đúp ^^
ầ
i thao tác Click -> Nháy đúp ^^ ặ ạ EndFunc
;End Func
;----------------- H t hàm ---------------------------------- ế ng trình ---------------------------- ể ươ ;----------- Hàm đ thoát ch
;Stop Function Func end() ả ơ ể ạ ch ươ msgbox (0,"AutoClick - autoboy195"," n OK đ thoát ! c m n b n đã s d ng
ử ụ
Ấ
ng trình ^^")
Exit ; thoát nhanh ch ng trình ươ EndFunc
; End Func
;------------------------ H t hàm------------------------- ế ặ bài 7 ;--------------- Cài đ t phím nóng
;Set Hot Keys, cái nè xem thêm
ở
HotKeySet("{F7}","auto")
HotKeySet("{F8}","end") ng trình ------------------ t ch t ể ự ắ ươ ờ ; --------------- Th i gian đ t
;Sleep time
Sleep($time_final) ; lúc này n u user nh p 2 thì chính là 2000 t c là 2 giây ! ứ ế ậ ử ể ỉ ọ
ng th thành qu :D ả ưở ươ ơ
ụ ữ ư
ề ậ ư ỉ ế “l
ả ườ
ọ ờ ẽ ấ
ạ i” không
ữ
, sau này đ c p đ n thì h c, nh ng
ế
s chuy n qua m t ph n không kém
ộ ể ầ ầ
ờ ạ B n có th ch nh s a cho g n h n !
ạ
Ch y ch
ng trình và h
ạ
…
Hjz, ngoài ra còn 2 nhi u c u trúc (For…In và With) n a nh ng tác gi
ề ấ
, nh ng cái y tui còn ch a h u h t
h c ọ
ữ
. Bây gi
c u trúc c b n đã d y h t rùi ^^
ế
ơ ả
ấ
ph n quan tr ng, đó là …
ọ
M i xem bài 7 sau đó xem l
i code trên !
Bài 7 : Function – Hàm – ch
, Tui đ ngh b n nên ngh gi
Hì
ị ạ ỉ ả ướ ề ọ ệ ng trình con, khi nào c n đ n thì “g i” lên ả ơ ầ ọ ế
_ _ ! ) 1. Khái ni m c b n : Hàm là gì ?
ơ ả
Hì, theo tui h u thì nó đ n gi n nh 1 ch
ư
ươ
đ th c hi n l nh ^^ (th thui, n u mu n tìm hi u kĩ thì google
ố
ế
ể ự ỉ
ệ ệ ể ế ệ i giá tr cho hàm (n u có) ế ị ị ế ầ : 2. Khai báo hàm :
== ==========================
Func tên_hàm($bi n_trong_hàm)
ế
dim $a
$a = InputBox("","Go so 1")
if $a = 1 Then ; N u user gõ s 1 thì
ế ố tb() ; g i hàm tb
ọ
Else ; n u gõ sai
ế
msgbox (0,"","Go sai !") ; hi n thông báo ệ EndIf Func tb() ; Hàm tb msgbox (0,"","Thong bao bang ham") ; l nhệ EndFunc ; k t thúc hàm tb
ế Ch y th : ử ạ Gõ khác s 1 :ố n OK Ấ Trong ví d trên, hàm tb() đã đ c g i n u user nh p s 1 ! ụ ượ ọ ế ậ ố ○ Ví d ụ v s d ng hàm b ng cách dùng phím nóng ề ử ụ ằ #cs ---------------------------------------------------------------------------- AutoIt Version: 3.3.0.0
Author: autoboy195
Script Function: Func to soft ! ặ ỏ c
ượ ng trình, gõ ch ể ạ ươ ữ #ce ----------------------------------------------------------------------------
; Script Start - Add your code below here
;Global $a,$b thêm ho c b cũng đ
msgbox (0,"vi du"," n OK, sau đó Gõ ch s đ ch y ch
t đ thoát ch ữ
; hi n thông báo Ấ
ng trình") ươ ệ ể func h1($a) ; == hàm 1 == ụ ể ằ $a = "Ví d vê func - đi u khi n b ng phím nóng"
ề
msgbox (0,"Thong bao - chuong trinh tu tat sau 8 giay",$a) EndFunc ; == k t thúc hàm 1 ==
ế Func h2($b) ; == hàm 2 == ả ơ ử ụ t nhanh ch ng trình ể ắ ươ $b = "C m n đã s d ng !"
msgbox (0,"Thong bao - code by autoboy195",$b)
Exit ; l nh đ t
ệ
EndFunc ;== h t hàm 2 == ế ế
ế ng trình t ươ ế ọ c g i lên
ượ ọ
c g i lên
ượ ọ
ự ắ
t
t HotKeySet("{s}","h1") ; phím nóng : n u user gõ s thì hàm 1 đ
HotKeySet("{t}","h2") ; phím nóng : n u user gõ t thì hàm 2 đ
Sleep(8000) ; N u không g i hàm 2 thì sau 8 giây ch
(1000 = 1s) ấ i ! Tui đã test rùi ! N u b n ko ch y dc thì hãy nh
ạ ệ ắ
ế ạ cũng ko rõ m y, vì tác gi ờ
ả ỉ ế
ch vi
t ấ ả Copy vào forrm đi đã, phân tích sau ! không thì m t l m đ y ^^
* Code trên ch y không b l
ạ
ị ỗ
chuyên gia v AutoIt c a b n (Vì chính tác gi
ủ ạ
ề
theo “s hi u” c a mình thui ^^, nh ng nh Encoding là …BOM… nhá (xem bài 1) )
ớ ự ể ư ủ ng trình (F5) • Ch y ch
ạ ươ Ấ n OK. N u b n gõ ch s (ch “s”) , thông báo sau hi n ra
ữ ữ ệ ế ạ ầ Ở ạ ấ ứ ạ ấ thông báo đ u tiên, khi b n n OK, t c là trong 8 giây đó, dù b n không
ư ế ẫ ạ ấ
Sleep(8000) )< ầ
ng trình s t t ! (vì code có l nh ặ ị ẽ ắ ươ ệ * L u ý :
ư
ặ ấ
th y form nh ng v n đang ch y ng m ! Sau 8 giây, n u b n không n nút gì ho c n
ạ
ngoài 2 nút trên thì m c đ nh ch
ch y ng m chính là cách th c chung c a virus !! ^^> ủ ứ ạ ầ N u b n gõ ch t (ch “t”) ữ ữ ế ạ t luôn ! Vì trong hàm 2 có câu l nh Exit , có tác ệ ắ ấ
ươ
t ngay l p t c ch t đúng không ^^, vì t c đ ng trình t
ươ ư ậ ế ố ộ , thui, xin ng trình (nói nh v y không bi
ả Sau khi n OK thì ch
d ng t
ậ ứ
ắ
ụ
tính b ng miligiay ch ko ph i giây nên sai s ch c cũng không nh
ỏ
ứ
ằ
ch m d t cái suy lu n ng c ngh ch c a tui t i đây !) ố ắ
ạ ủ ứ ế ậ ấ ố ậ ế ể ạ ko th g i đc phím Ctrl Alt Del ! ể ử K t lu n :
- Hàm đ ch y phím nóng :
HotKeySet("{ch cái ho c kí t ữ ặ ự}","tên_hàm_c n_g i ọ ") ầ {!} ! {#} # {+} + {^} ^ {{} { {}} } {SPACE} SPACE (phím dài nh t bàn phím ý) ấ {ENTER} ENTER ( bàn phím chính) ở {ALT} ALT {BACKSPACE} or {BS} BACKSPACE (nút <- trên nút enter ý) {DELETE} or {DEL} DELETE Up arrow (phím mũi tên lên) {UP} {DOWN} Down arrow (phím mũi tên xu ng)ố Left arrow (phím mũi tên trái) {LEFT} {RIGHT} Right arrow (phím mũi tên ph i)ả HOME {HOME} END {END} {ESCAPE} or {ESC} ESCAPE (phím Esc phía trên cùng bên trái) INS {INSERT} or {INS} PageUp {PGUP} PageDown {PGDN} các phím ch c năng F1 -> F12 {F1} - {F12} ứ TAB {TAB} {PRINTSCREEN} Print Screen key phím Windows (hình lá c ý) bên trái {LWIN} ờ {RWIN} phím Windows (hình lá c ý) bên ph i
ả ờ NUMLOCK (on/off/toggle) {NUMLOCK on} CAPSLOCK (on/off/toggle) {CAPSLOCK off} {SCROLLLOCK toggle} SCROLLLOCK (on/off/toggle) for Ctrl+Break processing {BREAK} {PAUSE} PAUSE {NUMPAD0} - {NUMPAD9} Numpad số {NUMPADMULT} Numpad * {NUMPADADD} Numpad + {NUMPADSUB} Numpad - {NUMPADDIV} Numpad / {NUMPADDOT} Numpad . {NUMPADENTER} Enter bàn phím ph ở ụ {APPSKEY} Windows App key {LALT} Left ALT key {RALT} Right ALT key {LCTRL} Left CTRL key {RCTRL} Right CTRL key {LSHIFT} Left Shift key {RSHIFT} Right Shift key {SLEEP} Computer SLEEP key {ALTDOWN} Holds the ALT key down until {ALTUP} is sent {SHIFTDOWN} Holds the SHIFT key down until {SHIFTUP} is sent {CTRLDOWN} Holds the CTRL key down until {CTRLUP} is sent {LWINDOWN} Holds the left Windows key down until {LWINUP} is sent {RWINDOWN} Holds the right Windows key down until {RWINUP} is sent {ASC nnnn} Send the ALT+nnnn key combination {BROWSER_BACK} 2000/XP Only: Select the browser "back" button {BROWSER_FORWARD} 2000/XP Only: Select the browser "forward" button {BROWSER_REFRESH} 2000/XP Only: Select the browser "refresh" button {BROWSER_STOP} 2000/XP Only: Select the browser "stop" button {BROWSER_SEARCH} 2000/XP Only: Select the browser "search" button {BROWSER_FAVORITES} 2000/XP Only: Select the browser "favorites" button {BROWSER_HOME} 2000/XP Only: Launch the browser and go to the home page {VOLUME_MUTE} 2000/XP Only: Mute the volume {VOLUME_DOWN} 2000/XP Only: Reduce the volume {VOLUME_UP} 2000/XP Only: Increase the volume {MEDIA_NEXT} 2000/XP Only: Select next track in media player {MEDIA_PREV} 2000/XP Only: Select previous track in media player {MEDIA_STOP} 2000/XP Only: Stop media player {MEDIA_PLAY_PAUSE} 2000/XP Only: Play/pause media player {LAUNCH_MAIL} 2000/XP Only: Launch the email application {LAUNCH_MEDIA} 2000/XP Only: Launch media player {LAUNCH_APP1} 2000/XP Only: Launch user app1 {LAUNCH_APP2} 2000/XP Only: Launch user app2 đ n kí t
ể ấ † (gi Alt n 01414 và th Alt ra) ta dùng send( "ASC 01414") ự ữ ấ ả ầ vd Send("{a 4}"); thì n phím a 4 l n
ấ
Send("+{TAB 4}") ;thì n Alt Tab 4 l n
ầ
ấ
Send("!{F}") ; n Alt + F
Send("^{v}") l; n Ctrl + V ấ
Ấ ữ ấ ố i)
Send("{a down}") ; n phím a xu ng (gi
d
ở ướ
Send("{a up}") ; th phím a lên (sau khi đc n xu ng)
ố
ả nó
ấ C 1 b ng keys cho b n l a ch n ! ạ ự ả ả ọ đ ng thoát (tính b ng miligiây) : ể ẹ ự ộ ằ ng trình t
) ằ ng trình, hàm sleep s b b qua : ờ
ứ ổ
ể ươ ẽ ị ỏ - Hàm đ h n th i gian cho ch
ươ
ờ
Sleep(th i_gian_tính_b ng_miligiay
Công th c đ i : 1000 = 1 giây
- Hàm đ thoát ngay l p t c ch
ậ ứ
Exit ế
ng trình con có s n trong autoit ) ( Tui g i là “hàm” vì đó cũng là 1 ch
ươ
“ko ti n” thì g i là “l nh” cho nó ti n
ệ ọ
ệ ệ ọ Th thui nh i đây thui ể , k t thúc hàm t ế ế ạ ☻ K t thúc bài h c ^^ ế ọ ế Func tên_hàm() ế ỉ ế ư ư ọ ??? Ch a đâu, đ n GUI m i khó :D
ế ớ - Khai báo hàm : Func tên_hàm($bi n_trog_hàm)
N u không thì
- g i hàmọ
ví d :ụ
... then
tb() ; g i hàm ch th này thui
else …
end if EndFunc c tiên : dim $a ế ướ
t sau cùng : ế - k t thúc hàm :
ế
• L u ý :
ư
- Khai báo bi n tr
- Hàm vi
…
$a = Inputbox(…)
…
tb()
…
Func tb() …
EndFunc ; H t code ! ng trình hoàn ch nh ế
Cái này s h c nâng cao
ẽ ọ ở bài : T o 1 ch
ạ ươ ỉ 11:04 PM 21.2.10
Trong AutoIt có r t nhi u l nh (hàm – 2200 hàm ), chúng không khó nh ng khó nh
ấ ề ệ ư ớ Thui thì s tìm hi u qua ví d v y ^^.
ể ụ ậ ẽ Ch ng II : L p trình giao di n cho AutoIt – GUI - Form ươ ệ ậ vi t c a Graphic User Interface – giao di n ng ườ ồ ọ
i dùng b ng đ h a. ằ ạ ừ ớ
khi ti p xúc v i ế t t
GUI là t
ừ ế ắ ủ
Đi u này có l
ẽ
ề
máy tính, chúng là các bi u t ệ
ấ
ng, c a s , nút b m, ... không c n ph i nóii nhi u vì b n đã th y nó ngay t
ề
ử ổ ầ
ả
ể ượ ấ ấ ố ạ ế ế 1. Gui trong AutoIt
C u trúc chung :
== =======================================
; GUI
; C u trúc trong GUI
ấ
#include ạ ạ ụ ệ t form b ng “X”
ằ GUICreate ( "title", width , height, left, top, style , exStyle, parent)
GUICtrlCreateLabel("text",left,top, style , exStyle, parent) ;T o Label
GUICtrlCreateButton("OK",width , height, left, top,style,exStyle, parent) ;
T o nút – button
;… nhi u công c khác
ề
GUISetStage(@SW_SHOW) ; hi n form
; code đ cho user t
ắ
ể
; == Begin==
while 1
if GuiGetMsg() = $GUI_EVENT_CLOSE then
exit
endif
wend
;== End ==
== ========================================== • Chú thích : ụ ng h p này là form) ườ ợ ằ ắ đây, vì đây ch là l p trình c b n, ko nên ph c t p quá. Title : Tiêu đ cho GUI , ví d : vidu
ề
Width : Chi u r ng (dùng chung – tr
ề ộ
Height : Chi u cao
ề
Left : T a đ trái (x)
ọ ộ
Top : T a đ trên (y) (t a đ tính b ng pixcel )
ọ ộ
ọ ộ
style : ki u c a s (xem thêm trong file help c a AutoIt)
ể ử ổ
ủ
exStyle : ki u c a s m r ng (expand Style) ^^ ch c th !
ế
ể ử ổ ở ộ
tìm hi u thêm
ỉ
ể ơ ả ậ ở ứ ạ c t o ra tr ượ ạ ướ ủ
c đó. C a s s p t o ra s là con c a ử ổ ắ ạ ẽ ủ ử ổ
ừ ị nh th , ch c n 3 y u t ả ầ ế ố ầ
đ u parent : handle c a c a s đã đ
c a s có handle v a gán.
ử ổ
(handle là gì thì tui ch u ! xem thêm trong net ! ><)
== ===================================================
Nh ng trong AutoIt thì không c n ph i c n nhi u y u t
ỉ ầ
là đ (đ i v i form) và 4 y u t ế ố ư ế
ầ
ề
(đ i v i các công c (label …) )
ụ ư
ủ ố ớ ế ố ố ớ ạ ử ổ ạ ạ ệ Ví d nè :
ụ
; by autoboy195
;GUI
#include m t đi ! t form - form ko t ắ ự ấ ; C u trúc cho phép t
ấ
while 1
if GuiGetMsg() = $GUI_EVENT_CLOSE then
exit
endif
wend
; K t thúc
ế
Và đây là form hoàn ch nh ! ỉ ! Ch l ả ẽ ừ ế ả ấ ắ ầ ng h p này, đó là cho phép t o giao di n b ng công c Koda : ph i “căn ke” ph c t p th sao ?? Đ ng lo, ứ ạ
ệ ụ ằ ứ ạ
i tr
ớ ườ ạ ở
ở ế B t đ u th y ph c t p rùi đây
AutoIt đã nghĩ t
ợ
http://files.myopera.com/saihukaru/AutoIT/GUIDesign.zip
Nhìn là h u ngay mà
ỉ
M SciTe Script Editor ra (xem bài 1)
M ti p Koda : C:\Program Files\AutoIt3\SciTE\Koda\FD.exe
Giao di n ch ng trình : ươ ệ Công cụ Form ầ ẽ ố ấ ụ ả ố Có l
kéo-th vào form.
Ch a h t ! Khi đã có form ng ý rùi, n F9 không c n nói gì rùi ph i không ? Nhìn gi ng vb6 ^^. Mu n l y công c nào thì
ả
ư ế ư ấ ế ấ ả ạ
ấ ử ổ ể ộ ớ Th là b n có code GUI trong tay trong tich t c, r t nhanh ph i không ?
ắ
Sau đó n Copy to Clipboard đ sao chép vào b nh , sau đó dán vào c a s SciTe Script
Editor t form b ng nút “X” và vô hi u hóa ể ả ệ ằ Trong code này có c code đ cho phép user t
ắ
(Disable) nút maximize, quá ti n ! [code : 8 đ n 15]
ế ệ - Tìm hi u code trên 1 tí : ể ệ t b ng kí t ặ ị
ả ệ ế ằ ự GUISetStage(@SW_SHOW) : hi n form (m c đ nh là không hi n)
ệ
@SW_SHOW : Macro hi n form(không ph i virus đâu nhá ! – nh n bi
ậ
@) i dùng n nút “X” ấ $GUI_EVENT_CLOSE : s ki n khi ng
(Tui ko h u ch
ỉ ườ
ự ệ
ỗ while 1 , hjz, 1 là gì nh ??) ỉ - th thui, ch y u là dùng Koda, vì code thì tui kém le’m ế ầ ủ ế ế Th là xong ph n GUI
^^ ể ở ộ B ng ki u m r ng
ả
ki uể mô tả $WS_EX_ACCEPTFILES Allow an edit or input control within the created GUI
window to receive filenames via drag and drop. The
control must have also the $GUI_DROPACCEPTED
state set by GUICtrlSetState. for other controls the
drag&drop info can be retrieved with
@GUI_DRAGID, @GUI_DRAGFILE,
@GUIDROPID. $WS_EX_APPWINDOW Forces a top-level window onto the taskbar when the
window is visible. $WS_EX_CLIENTEDGE Specifies that a window has a border with a sunken
edge. $WS_EX_CONTEXTHELP Includes a question mark in the title bar of the
window. Cannot be used with the
WS_MAXIMIZEBOX or WS_MINIMIZEBOX. $WS_EX_DLGMODALFRAME Creates a window that has a double border; the
window can, optionally, be created with a title bar by
specifying the WS_CAPTION style in the style
parameter. $WS_EX_MDICHILD Create a child window included in its parent window
(simulation not real MDI). $WS_EX_OVERLAPPEDWINDOW Combines the WS_EX_CLIENTEDGE and
WS_EX_WINDOWEDGE styles. $WS_EX_STATICEDGE Creates a window with a three-dimensional border
style intended to be used for items that do not accept
user input. $WS_EX_TOPMOST Specifies that a window created with this style should
be placed above all non-topmost windows and should
stay above them, even when the window is
deactivated. $WS_EX_TRANSPARENT The window appears transparent because the bits of
underlying sibling windows have already been
painted. ộ ử ổ trên ệ ề $WS_EX_TOOLWINDOW t o ra m t c a s công c , thanh tiêu đ nh h n,
ỏ ơ
ề
ụ
ạ
ko hi n ico trên thanh tiêu đ , ko hi n tên
ệ
taskbar, ko di chuy n t
i c a s này đc = Alt+Tab,
ể ớ ử ổ
nh ng menu h th ng v n hi n ra khi n Alt+Space
ẫ ệ ố ư ệ ấ ộ ớ ớ ộ
i v i m t $WS_EX_WINDOWEDGE c nêu ra. Ch rõ r ng m t c a s có m t biên gi
ộ ử ổ
ỉ
c nh đ
ạ ằ
ượ $WS_EX_LAYERED t o ra GUI n, chú ý ki u này ko dùng cho GUI con
ạ ể ẩ đ s d ng các bi n trên b n c n
ể ử ụ ạ ầ #include ề ữ ệ
2. Truy n d li uBài 1 : làm quen !
ở ươ
Bài 2 : Ch y ch
ng trình :
ạ
ươ
Bài 3 : Khai báo
Arrays (m ng)ả
Array là m t bi n có ch a m t lo t các d li u thành ph n c a cùng m t lo i và kích c . M i y u t
trong bi n này có th đ
Lo i d li u trong Arrays
ạ ữ ệ
ộ
m t ộ d li u c a cùng m t lo i. Tuy nhiên, k thu t nói, m t
ạ
ậ
m t s vào m t giá tr boolean. Vì v y,
KHÔNG Khuy n khích
ế
ộ
Bài 4: Các toán t
(r t nhanh thui !)
ử ấ
Bài 5 : C u trúc r nhánh
ẽ
ấ
ặ
ể
Bài 6 : C u trúc l p
ấ
Phù !!.. Sau khi b n đã hi u h t bài h c t
ế
nhé
ng trình con
c khi h c
ươ
i lao 30 phút tr
Ả
Ệ
B NG KEYS DÙNG CHO L NH HotKeySet(“{}”)
key (flag=0)
key đc n trên bàn phím
ấ