H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

Ch

ươ 16: ng

X lý đ h a và các hi u ng nh đ ng

ệ ứ ả

ồ ọ

--------oOo--------

N i dung th o lu n: ả ậ ộ

- S d ng th vi n hay không gian tên System.Drawing đ v nh đ h a ồ ọ ể ẽ ả ư ệ ử ụ

- T o hi u ng nh đ ng trên form ệ ứ ả ạ ộ

- Co giãn đ i t ng trên form ố ượ

- T o m t form trong su t (transparency) ạ ộ ố

VB.NET cung c p đ công c và th vi n đ khai thác các hi u ng đ h a. Trong ư ệ ệ ứ ồ ọ ủ ụ ể ấ

ch ươ ệ ng này chúng ta s khám phá vi c t o các form mang dáng d p đ h a, t o hi u ệ ạ ồ ọ ẽ ấ ạ

ng nh đ ng d a vào PictureBox và b đ nh th i Timer, co giãn các đ i t ứ ả ộ ị ố ượ ự ộ ờ ng d a vào ự

thu c tính Height và Width. ộ

Chú ý:

• VB.NET s d ng các hàm đ h a trong th vi n GDI+ ch a trong ử ụ ư ứ ệ ồ ọ

ng tròn… ể ẽ ả ơ ư ườ ng th ng, đ ẳ ườ

System.Drawing đ v các hình đ n gi n nh đ • H th ng đ h a trong VB.NET ch là đi m Pixel ệ ố ồ ọ ể ỉ

• VB.NET không h tr ph ỗ ợ ươ ộ ng th c Move, thay vào đó b n s s d ng các thu c ạ ẽ ử ụ ứ

tính Left, Top hay Location, SetBound.

• Có th làm vi c v i nhi u khuôn d ng nh nh BMP, GIF, JPEG, WMF, TIFF… ả ệ ớ ư ể ề ạ

1. Thêm vào hình nh b ng cách s d ng th vi n ằ

ư ệ System.Drawing

ử ụ

Ch ng này chúng ta s s d ng các hàm API trong th vi n GDI+ đ v nh. Ta có ươ ẽ ử ụ ể ẽ ả ư ệ

th t v nh, thay đ i màu n n, màu c , ki u ch v và t ể ự ẽ ả ữ ẽ ề ể ổ ọ ấ ả ọ t c m i th . ứ

H th ng t a đ c a form ọ ộ ủ ệ ố

Trong VB, m i form có m t h th ng t a đ riêng. G c t a đ b t đ u t góc trái trên ộ ắ ầ ừ ộ ệ ố ố ọ ỗ ọ ộ

l. c a form (d ủ ướ i thanh tiêu đ ). Đ n v đ ề ị ượ ơ c tính b ng pixe ằ

Có hai tr c, tr c ngang là tr c hoành – tr c x, chi u h ụ ụ ụ ụ ề ướ ề ng qua ph i. Tr c d c, chi u ụ ả ọ

h i là tr c tung – tr c y. M t đi m trên form đ ươ ng xu ng d ố ướ ụ ụ ể ộ ượ ở ặ ọ c xác đ nh b i c p t a ị

đ (x, y). ộ

2. L p x lý đ h a System.Drawing.Graphics

ớ ử

ồ ọ

Biên so n: Ph m Đ c L p - 1 - Add: cnt-44-dh, ứ ạ ạ ậ VIMARU

H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

L p Graphics trong th vi n System.Drawing ch a các ph ng th c và thu c tính đ v ư ệ ứ ớ ươ ể ẽ ứ ộ

hình nh lên form. Các l p khác b n có th tham kh o trong Help c a VB.NET. ủ ể ả ạ ả ớ

Sau đây là các ph ng th c dùng v đ ng hình h c c b n có trong l p Graphics: ươ ẽ ườ ứ ọ ơ ả ớ

ươ ng th c ứ ẳ

ể ố

Mô tả Ph Đ ng th ng n i hai đi m Line ể ố ườ DrawRectangle Hình ch nh t v i 4 đi m ể ữ ậ ớ DrawArc ườ DrawEllipse ẽ DrawPolygon DrawCurve m ng các Đ ng hình h c ọ ườ ẳng Đ ng th ườ Hình ch nh t ữ ậ Cung tròn Vòng tròn/ Elipse Đa giác Đ ng cong ườ Đ ng cong n i dây cung hai đi m V hình Elip hay hình tròn m t t p các đi m Đa giác đ ể ượ ẽ ừ ộ ậ nhiên n i thành t Đ ng cong t ừ ố c v t ự ườ ả

Đ ng cong bezier DrawBezier ườ đi mể Đ ng cong Bezier ườ

Ngoài ra còn có m t s hàm tô đ y nh là FillRectangle, FillEllipse, FillPolygon. ộ ố ư ầ

Khi s d ng các ph ng th c c a system.Drawing.Graphics b n c n t o ra m t th ử ụ ươ ầ ạ ứ ủ ạ ộ ể

ng bút v (Pen), ch i v hi n c a bi n l p Graphics. ế ớ ủ ệ Ti p theo t o ra các đ i t ạ ố ượ ế ổ ẽ ẽ

(Brush) đ xác đ nh nét v hình h c s dùng v và tô. Đ i t ọ ẽ ố ượ ể ẽ ẽ ị ng v Pen đ ẽ ượ ề c truy n

ng Brush đ nh tham s cho các ph ố ư ươ ng th c v không c n đ n tô màu. Đ i t ầ ố ượ ứ ẽ ế ượ c

truy n nh tham s cho các ph ư ề ố ươ ng th c v yêu c u đ n tô màu. Ví d nh ph ế ứ ụ ư ẽ ầ ươ ng

th c DrawLine sau s v đ ẽ ẽ ườ ứ ố ng th ng n i hai đi m (20, 30) và (100, 80). Bi n đ i ể ế ẳ ố

ng GraphicsFun đ c khai báo có ki u Graphics và bi n đ i t ng Pen mang tên t ượ ượ ố ượ ể ế

PenColor đ c dùng đ ch đ nh nét v và màu đ v đ ượ ể ẽ ườ ể ỉ ẽ ị ng th ng: ẳ

Dim GraphicsFun As Graphics

Dim PenColor As New System.Drawing.Pen(System.Drawing.Color.Red) GraphicsFun = Me.CreateGraphics GraphicsFun.DrawLine(PenColor, 20, 30, 200, 80)

GraphicsFun.DrawLine(Pens.DarkViolet, 25, 35, 205, 85)

Biên so n: Ph m Đ c L p - 2 - Add: cnt-44-dh, ứ ạ ạ ậ VIMARU

H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

2.1. S d ng s ki n Paint c a Form ự ệ ử ụ ủ

N u b n đ t đo n mã trên vào s ki n Click c a m t button nào đó thì khi click nút đó ự ệ ủ ế ạ ặ ạ ộ

c v ra. Tuy nhiên n u ta di chuy n m t c a s khác đè lên s có m t đ ẽ ộ ườ ng th ng đ ẳ ượ ẽ ộ ử ổ ế ể

ch ng trình hay thay đ i kích th c c a form thì đ ng th ng s bi n m t. Mu n nó ươ ổ ướ ủ ườ ẽ ế ẳ ấ ố

hi n di n th ng xuyên thì b n ph i bi t khi nào c n v l ệ ệ ườ ạ ả ế i đ ẽ ạ ườ ầ ấ ng th ng. VB cung c p ẳ

. B t kỳ khi nào ch ng trình b Windows xóa s ki n Paint đ th c hi n công vi c này ự ệ ể ự ệ ệ ấ ươ ị

ng th c Paint, vì th mu n t t c n i dung c a s và yêu c u v l ộ ử ổ ẽ ạ ầ i, nó s g i đ n ph ẽ ọ ế ươ ố ấ ả ứ ế

các hình nh trên form hi n th th ng tr c b n c n đ t nó trong s ki n Paint này. ị ườ ể ả ự ạ ầ ự ệ ặ

Trong bài t p MyDrawShaps sau đây, chúng ta s th c hành v các đ ẽ ự ẽ ậ ườ ng c b n lên ơ ả

form s d ng s ki n Paint này. B n có th di chuy n c a s khác đè lên, thay đ i kích ể ể ử ổ ự ệ ử ụ ạ ổ

th c mà các hình không h m t đi. ướ ề ấ

2.2. Ch ng trình MyDrawShaps v hình ch nh t, đ ng th ng và Ellipse ươ ữ ậ ườ ẽ ẳ

T o m i m t Solution và Add vào m t d án cùng tên MyDrawSha ps ộ ự ạ ớ ộ

My Draw Shaps Thay đ i kích th ổ ướ c Form l n h n, đ t thu c tính Text c a Form là ộ ủ ặ ớ ơ

ủ T o th t c Form1_Paint b ng cách ch n Form1 Events trong danh sách Class Name c a ủ ụ ạ ằ ọ

c a s Code Editor, ch n Paint trong danh sách Method Name ử ổ ọ

Nh p vào đo n mã sau: ậ ạ

ế

ươ

ồ ọ

ng th c đ h a

'Chu n b bi n cho ph Dim GraphicsFun As Graphics GraphicsFun = Me.CreateGraphics

ỏ ể ẽ ườ

ử ụ

ng th ng và Ellipse

'S d ng bút v màu đ đ v đ Dim PenColor As New System.Drawing.Pen(Color.Red)

Biên so n: Ph m Đ c L p - 3 - Add: cnt-44-dh, ứ ạ ạ ậ VIMARU

H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

GraphicsFun.DrawLine(PenColor, 20, 30, 100, 80) GraphicsFun.DrawEllipse(PenColor, 10, 120, 200, 160)

ử ụ

'S d ng ch i v màu xanh v hình ch nh t Dim BrushColor As New SolidBrush(Color.Green) GraphicsFun.FillRectangle(BrushColor, 150, 10, 250, 100)

Ghi chú mã:

- Đo n mã trên v ba hình c b n là hình ch nh t, đ ng th ng và ellipse. ữ ậ ơ ả ẽ ạ ườ ẳ

ớ - Hàm v hình Ellipse yêu c u nh p hình ch nh t c b n ch a Ellipse v i 4 ậ ơ ả ữ ứ ẽ ầ ậ

đi m góc. ể

ng trình: Ch y ch ạ ươ

B n n F5 đ ch y ch ng trình. ể ạ ạ ấ ươ

Khi ch ươ ng trình ch y, th t c Form1_Paint đ ủ ụ ạ ượ ạ c tri u g i và các hình xu t hi n. B n ệ ệ ấ ọ

có th thay đ i kích th c hay cho m t c a s khác đè lên mà không làm m t đi các hình ể ổ ướ ộ ử ổ ấ

trên đã v . K t qu : ả ẽ ế

ng trình

3. Thêm ho t hình cho ch ạ

ươ

Trong ph n này chúng ta s khám phá m t s hi u ng đ n gi n nh di chuy n v trí ộ ố ệ ứ ư ẽ ể ầ ả ơ ị

ả nh trong PictureBox, phóng to, thu nh nh k t h p v i b đ nh th i Timer. ỏ ả ớ ộ ị ế ợ ờ

ng trên form 3.1. Di chuy n m t đ i t ể ộ ố ượ

Biên so n: Ph m Đ c L p - 4 - Add: cnt-44-dh, ứ ậ ạ ạ VIMARU

H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

Nh đã nói VB.NET không còn h tr ph ng th c Move nh VB6. Thay vào đó b n s ỗ ợ ươ ư ạ ử ứ ư

ng th c SetBounds đ thay đ i v trí, di chuy n và d ng thu c tính Left, Top hay ph ụ ộ ươ ổ ị ứ ể ể

i kích th c cho đ i t ng đ nh l ị ạ ướ ố ượ

Thu c tính / ph ộ ươ ng Mô tả

th cứ Left Cho phép đ nh t a đ đ nh góc trái trên cùng c a đ i t ủ ố ượ ng ộ ỉ ọ ị

Top ng theo theo h Đ nh t a đ đ nh góc trái trên cùng c a đ i t ị ng ngang ộ ỉ ướ ọ ủ ố ượ

Location SetBounds t l p ph m vi (kích th c và v trí cho đ i t ng) ng d c h ọ ướ K t h p c a Left và Top ế ợ ủ Thi ạ ế ậ ướ ố ượ ị

Thu c tính Left và Top đ ng. ộ ượ c dùng nhi u nh t khi mu n thay đ i v trí c a đ i t ố ổ ị ố ượ ủ ề ấ

ng theo chi u ngang, ta thay đ i hay gán l i giá tr cho Left. Đ thay đ i v trí đ i t ổ ị ố ượ ể ề ổ ạ ị

Ng i theo chi u d c, thay đ i hay gán l i giá tr cho Top. c l ượ ạ ề ọ ổ ạ ị Ví d :ụ

Đ di chuy n đ i t ng PictureBox1 sang ngang 300 b n c ng Left c a nó lên 300: ố ượ ể ể ạ ộ ủ

PictureBox1.Left = PictureBox1.Left + 300

Đ di chuy n đ i t ng PictureBox1 sang trái 300, tr Left c a nó đi 300: ố ượ ể ể ủ ừ

PictureBox1.Left = PictureBox1.Left - 300

Đ di chuy n theo chi u d c lên trên 300, c ng Top lên 300: ề ể ể ọ ộ

PictureBox1.Top = PictureBox1.Top + 300

i 300, tr Top đi 300: Đ di chuy n xu ng d ể ể ố ướ ừ

PictureBox1.Top = PictureBox1.Top - 300

N u mu n đ nh v chính xác thu c tính Top và Left b n có th gán nh sau: ư ế ể ạ ố ộ ị ị

PictureBox1.Top = 20

PictureBox1.Left = 30

3.2. Thu c tính Location ộ

B n cũng có th s d ng thu c tính Location đ đ nh v trí c a đ i t ể ử ụ ủ ố ượ ể ị ạ ộ ị ng nh sau: ư

Dim p As New Point(20, 30)

PictureBox1.Location = p

ng Timer 3.3. T o hi u ng ho t hình d a vào đ i t ạ ệ ứ ố ượ ự ạ

Hi u ng ho t hình d a vào m o là, c sau m t khoàn g th i gian nào đó r t ng n ta l ệ ứ ự ứ ẹ ạ ộ ấ ắ ờ ạ i

thay đ i v trí c a đ i t ng nh. Trong bài t p MyMovingIcon sau đây chúng ta s s ủ ố ượ ổ ị ẽ ử ả ậ

ng Timer đ đ nh th i gian di chuy n cho đ i t ng nh chi c ô tô (b n có d ng đ i t ụ ố ượ ể ị ố ượ ể ờ ế ạ ả

Biên so n: Ph m Đ c L p - 5 - Add: cnt-44-dh, ứ ạ ạ ậ VIMARU

H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

th l y b t c nh nào mình thích, mi n là dung l ng đ nh đ ch ấ ứ ả ể ấ ễ ượ ỏ ể ủ ươ ạ ng trình ch y

không quá ch m).ậ

Tìm hi u ch ng trình: ể ươ

Ch ng trình có hai nút là “Lên trên” và “Xu ng d i” cùng m t PictureBox. Khi ng ươ ố ướ ộ ườ i

dùng click vào m t trong hai nút thì nh chi c ô tô s t ẽ ự ộ đ ng di chuy n theo chi u đó. ể ề ế ả ộ

Thi t k giao di n: ế ế ệ

B n t o m i m t Solution và add vào m t d án cùng tên là MyMovingIcon r i thi ộ ự ạ ạ ớ ộ ồ ế ế t k

giao di n nh hình. Trong đó các đ i t ng có thu c tính nh sau: ố ượ ư ệ ư ộ

- Form1: Text – “MyMovingIcon”

- Button1: Name – btnLentren, Text – “Lên trên”

- Button2: Name – btnXuongduoi, Text – “Xu ng d i” ố ướ

- ạ PictureBox1: SizeMode – StretchImage, Image – m t nh Icon b t kỳ mà b n ộ ả ấ

thích

- Timer1: Enable – False

Vi t mã: ế

Tr c h t chúng ta s khai báo m t bi n có tên là i dòng ướ ế ẽ ế ộ lentren ki u Boolean ể d ở ướ

i dùng click vào nút khai báo Form1 đ nh n l nh lên trên hay xu ng d ậ ệ ể ố ướ i. N u ng ế ườ

i khi click vào nút “Xu ng d i” thì lentren “Lên trên” thì bi n ế letren = true và ng c l ượ ạ ố ướ

= False:

Dim lentren As Boolean

Biên so n: Ph m Đ c L p - 6 - Add: cnt-44-dh, ứ ạ ạ ậ VIMARU

H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

Ti p theo ta t o th t c ệ ứ ể ả ể ạ ế ạ ạ ủ ụ Timer1_Tick đ t o hi u ng di chuy n nh. B n double –

click vào đ i t ng Timer1 đ t o th t c này và nh p vào đo n mã nh sau: ố ượ ủ ụ ể ạ ư ạ ậ

ể ả

ể ả

ướ

i

If lentren = True Then 'Di chuy n nh lên trên If PictureBox1.Top > 10 Then PictureBox1.Location = New Point _ (PictureBox1.Location.X - Int(Rnd() * 5), _ PictureBox1.Location.Y - Int(Rnd() * 5)) End If Else ố 'Di chuy n nh xu ng d If PictureBox1.Top < (Me.Size.Height - 75) Then PictureBox1.Location = New Point _ (PictureBox1.Location.X + 10, _ PictureBox1.Location.Y + 10) End If End If

ủ ụ Khi Timer ho t đ ng (thu c tính Enable = True) thì sau kho ng 75 / 1000 giây, th t c ạ ộ ả ộ

Timer_Tick s đ c g i và nó ti n hành ki m tra v trí c a PictureBox1 đ th c thi hành ẽ ượ ọ ể ự ủ ể ế ị

ng ng. đ ng d ch chuy n t ộ ể ươ ứ ị

Bây gi ta t o th t c ờ ư ạ ủ ụ btnLentren_Click nh sau:

lentren = True Timer1.Enabled = True

Th t c

ủ ụ btnXuongduoi_Click: lentren = False Timer1.Enabled = True

ể Đ có th sinh s ng u nhiên ta t o th t c Form1_Load và nh p dòng mã sau: ủ ụ ể ạ ậ ố

ẫ Randomize()

ng trình: Ch y ch ạ ươ

B n n F5 đ ch y ch ng trình. n nút “Lên trên” và xem nh di chuy n ạ ấ ể ạ ươ ể lên trên. nẤ Ấ ả

i” đ xem nh di chuy n xu ng d i: “Xu ng d ố ướ ể ể ả ố ướ

Biên so n: Ph m Đ c L p - 7 - Add: cnt-44-dh, ứ ạ ạ ậ VIMARU

H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

4. Phóng to, thu nh đ i t

ng khi ch

ng trình đang th c thi

ỏ ố ượ

ươ

ề ộ B n cũng có th s d ng thu c tính Height và Width đ thay đ i chi u cao, chi u r ng ể ử ụ ề ể ạ ộ ổ

ng đ đ i t ng có th phóng to, thu nh hay co giãn đ c. chúng c a đ i t ủ ố ượ ể ố ượ ể ỏ ượ Bây gi ờ

ỏ ủ ta s ch nh s a bài t p MyMovingIcon đ có th minh h a cách phóng to, thu nh c a ử ể ể ẽ ậ ọ ỉ

ng PictureBox1. đ i t ố ượ

Làm theo các b c sau đây: ướ

- M l i Solution MyMovingIcon n u đã đóng nó. ở ạ ế

- Tr thi t k giao di n và t o thêm ba nút nh n m i là l ở ạ i c a s ử ổ ế ế ệ ấ ạ ớ

ể btnDungdichuyen – Nút nh n t m d ng di chuy n n u Icon đang đi chuy n ấ ạ ừ ể ế

theo l nh; btnPhongto – Nút nh n cho phép phóng to nh; btnThunho – Nút ệ ấ ả

ỏ ả . nh n cho phép thu nh nh ấ

- Ta cũng s t o thêm th t c PictureBox1_Click cho phép phóng to nh khi ủ ụ ẽ ạ ả

ng i dùng click lên nh khi ch ng trình đang th c thi. ườ ả ươ ự

Giao di n c a Solution sau khi ch nh s a s nh sau: ử ẽ ư ệ ủ ỉ

Biên so n: Ph m Đ c L p - 8 - Add: cnt-44-dh, ứ ạ ạ ậ VIMARU

H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

Vi t mã: ế

T o th t c ạ ủ ụ btnDungdichuyen_Click:

Timer1.Enabled = False

Th t c này s thi i thu c tính Enable c a Timer1 là False đ d ng vi c di ủ ụ ẽ t l p l ế ậ ạ ể ừ ủ ệ ộ

chuy n nh. ể ả

T o th t c i dùn click vào nh: ế ả ạ ườ ả ủ ụ PictureBox1_Click phóng to nh n u ng

PictureBox1.Height = PictureBox1.Height + 15

PictureBox1.Width = PictureBox1.Width + 15

Th t c này tăng các giá tr chi u cao (Height) và chi u r ng (Width) c a PictureBox1 ề ộ ủ ụ ủ ề ị

lên đ nh trong nó co giãn theo. ể ả

Th t c ủ ụ btnPhongto_Click phóng to nh:ả

PictureBox1.Height = PictureBox1.Height + 15

PictureBox1.Width = PictureBox1.Width + 15

Th t c ủ ụ btnThunho_Click thu nh nh:

ỏ ả PictureBox1.Height = PictureBox1.Height - 15

PictureBox1.Width = PictureBox1.Width - 15

Th t c này ti n hành ng i v i th t c phóng to, nó s tr c l ủ ụ ế ượ ạ ớ ủ ụ ẽ ừ giá tr chi u cao và ề ị

chi u r ng c a PictureBox1 đi đ nh co l i. ề ộ ể ả ủ ạ

Bây gi ch ờ ươ ng trình đã s n sàng đ b n ch y th . ử ể ạ ẵ ạ

ng trình: Ch y ch ạ ươ

Biên so n: Ph m Đ c L p - 9 - Add: cnt-44-dh, ứ ậ ạ ạ VIMARU

H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

ng trình. B n có th n đ ng th i hai nút lên trên và xu ng d Ấ n F5 đ ch y ch ể ạ ươ ể ấ ạ ồ ờ ố ướ ể i đ

xem nh di chuy n theo hai ph ng khác nhau. ể ả ươ

ị ữ Khi nh di chuy n đ n gi a form, b n click vào nút d ng di chuy n đ nh đ nh v gi a ể ả ữ ừ ể ế ể ạ ả ị

form và cho phóng to, thu nh nh. ỏ ả K t qu : ả ế

5. T o c a s Form trong su t ố

ạ ử ổ

Sau đây chúng ta s t o hi u ng trong su t (transparency) cho c a s form. B n m l ử ổ ệ ứ ẽ ạ ố ở ạ i ạ

Solution MyMovingIcon n u đã đóng nó. B n t o thêm hai nút nh n là btnTrongsuot – ạ ạ ế ấ

nút nh n t o đ trong su t cho Form và nút btnMacdinh – nút nh n đ a form tr ấ ạ ư ấ ộ ố ở ề v

tr ng thái ban đ u. ạ ầ

Biên so n: Ph m Đ c L p - 10 - Add: cnt-44-dh, ứ ạ ạ ậ VIMARU

H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

Vi t mã: ế

T o th t c ạ ạ ộ ố ủ ụ btnTrongsuot_Click t o đ trong su t:

Me.Opacity = 0.5

Th t c ở ề ư ư ạ ủ ụ btnMacdinh_Click đ a tr ng thái form tr v nh cũ:

Me.Opacity = 1

ng trình: Ch y ch ạ ươ

n F5 đ ch Ấ ể ươ ế ng trình ch y. B n n nút nh n “Trong su t” đ form trong su t. K t ạ ấ ể ạ ấ ố ố

qu :ả

Biên so n: Ph m Đ c L p - 11 - Add: cnt-44-dh, ứ ậ ạ ạ VIMARU

H ng d n l p trình VB.NET Ch ẫ ậ ướ ệ ứ ả ng 16: S lý đ h a và các hi u ng nh ồ ọ ử ươ đ ngộ

6. T ng k t ch

ng 16

ế

ươ

B n làm b ng t ng k t nh ng gì đã h c trong ch ng 16 này và làm l i các bài t p theo ữ ế ạ ả ọ ổ ươ ạ ậ

ý thích c a b n. ủ ạ

ự B n có th k t h p v i môn x lý nh hay đ h a máy tính đ có nh ng bài t p th c ể ế ợ ồ ọ ử ữ ể ạ ả ậ ớ

s h u ích. Trong th i gian t ự ữ ờ ớ i tôi s đ a mã ngu n m t s bài t p x lý nh cũng nh ộ ố ẽ ư ử ậ ả ồ ư

ng trình v giúp bé h c t p. mô ph ng ch ỏ ươ ng trình Paint c a Windows, ch ủ ươ ọ ậ Mong các ẽ

b n đón đ c. ạ ọ

Biên so n: Ph m Đ c L p - 12 - Add: cnt-44-dh, ứ ạ ậ ạ VIMARU