Lp trình trc quan
97
BÀI 13. METHOD
Method là các chương trình được xây dng sn để phc v cho vic thc hin các thao tác
thường gp. Method có tác dng gn ging như lnh, th tc hoc hàm được xây dng sn
trong các ngôn ng lp trình có cu trúc. Thông thường Method ch tác dng lên mt lp các
đối tượng.
Sau đây ta s xét mt s Method thường được s dng.
13.1. Circle Method
Cú pháp : [Object].Circle [Step] (X,Y), Radius [, [Color], [Start], [End], [Aspec]]
- Object : tên ca biu mu hoc khung hình mà ta cn v hình tròn trên đó.
- Step : cho biết đây là ta độ tương đối so vi v trí hin hành do hai thuc tính CurrentX
và CurrentY cung cp.
- X, Y : ch định ta độ tâm ca hình tròn, ellipse hoc cung tròn.
- Radius : ch định bán kính.
- Color : ch định màu sc. Màu tương ng vi giá tr là mt s nguyên.
- Start, End : tr s tính theo Radian, cho biết đim xut phát và đim kết thúc khi v mt
cung tròn hoc Ellipse.
- Aspect : tr s cho biết góc xoay mt phng cha hình tròn để to ra hình Ellipse.
Tác dng : cho phép to ra mt hình tròn, cung tròn hoc hình Ellipse theo yêu cu người
s dng.
Ví d 1: Form.Circle (1000, 2000), 500
V hình tròn có tâm là đim (1000,2000) và bán kính là 500. (các đơn v tính theo Fixed).
Ví d 2 : v mt dãy các hình tròn đồng tâm vi màu sc tùy ý.
Lp trình trc quan
98
Private Sub Hinhtron_Click()
Dim CX, CY, Radius ' Declare variable.
ScaleMode = 3 ' Set scale to pixels.
CX = ScaleWidth / 2 ' Set X position.
CY = ScaleHeight / 2 ' Set Y position.
If CX > CY Then Limit = CY Else Limit = CX
For Radius = 0 To Limit ' Set radius.
Circle (CX, CY), Radius, RGB(Rnd * 255, Rnd * 255, Rnd *
255)
Next Radius
End Sub
13.2. Line Method
Cú pháp : [Object].Line [Step] (X1, Y1) - [Step] (X2, Y2)[,Color][,BF]
- Object : tên ca biu mu hoc khung hình mà ta cn v dường thng trên đó.
- X1, Y1 : ch định ta độ đim xut phát.
- X2, Y2 : ch định ta độ đim kết thúc.
- Color : ch định màu sc. Màu tương ng vi giá tr là mt s nguyên.
- Step : cho biết đây là ta độ tương đối so vi v trí hin hành do hai thuc tính CurrentX
và CurrentY cung cp.
- B (Box) : v mt khung hình ch nht. Lúc này đim xut phát và đim kết thúc là hai
góc hình ch nht.
- F (Fill) : khung hình ch nht s được tô màu.
Tác dng : cho phép to ra mt đon thng hoc khung hình ch nht theo yêu cu người s
dng.
Ví d : v các hình và các đường thng vi nhiu màu sc và hình dng khác nhau.
Private Sub duongthang_Click()
Dim CX, CY, F, F1, F2, I ' Declare variables
ScaleMode = 3 ' Set ScaleMode to pixels.
Lp trình trc quan
99
CX = ScaleWidth / 2 ' Get horizontal center.
CY = ScaleHeight / 2 ' Get vertical center.
DrawWidth = 8 ' Set DrawWidth.
For I = 50 To 0 Step -2
F = I / 50 ' Perform interim
F1 = 1 - F: F2 = 1 + F ' calculations.
ForeColor = QBColor(I Mod 15) ' Set foreground color.
Line (CX * F1, CY * F1)-(CX * F2, CY * F2), , BF
Next I
DoEvents ' Yield for other processing.
If CY > CX Then ' Set DrawWidth.
DrawWidth = ScaleWidth / 25
Else
DrawWidth = ScaleHeight / 25
End If
For I = 0 To 50 Step 2 ' Set up loop.
F = I / 50 ' Perform interim
F1 = 1 - F: F2 = 1 + F ' calculations.
Line (CX * F1, CY)-(CX, CY * F1) ' Draw upper-left.
Line -(CX * F2, CY) ' Draw upper-right.
Line -(CX, CY * F2) ' Draw lower-right.
Line -(CX * F1, CY) ' Draw lower-left.
ForeColor = QBColor(I Mod 15) ' Change color each time.
Next I
DoEvents ' Yield for other processing.
End Sub
13.3. Cls Method
Cú pháp : [object.]Cls
Tác dng : xóa màn hình ca Form.
Ví d :
Private Sub Xoa_Click()
Dim Msg ' Declare variable.
AutoRedraw = -1 ' Turn on AutoRedraw.
ForeColor = QBColor(15) ' Set foreground to white.
Lp trình trc quan
100
BackColor = QBColor(1) ' Set background to blue.
FillStyle = 7 ' Set diagonal crosshatch.
Line (0, 0)-(ScaleWidth, ScaleHeight), , B ' Put box on form.
Msg = "This is information printed on the form background."
CurrentX = ScaleWidth / 2 - TextWidth(Msg) / 2 ' Set X position.
CurrentY = 2 * TextHeight(Msg) ' Set Y position.
Print Msg ' Print message to form.
Msg = "Choose OK to clear the information and background "
Msg = Msg & "pattern just displayed on the form."
MsgBox Msg ' Display message.
Cls ' Clear form background.
End Sub
13.4. Hide Method
Cú pháp : [Object.]Hide
Tác dng : che ca s Form.
Ví d : che và làm xut hin li ca s Form đang làm vic..
Private Sub Chehien_Click()
Dim Msg ' Declare variable.
Hide ' Hide form.
Msg = "Choose OK to make the form reappear."
MsgBox Msg ' Display message.
Show ' Show form again.
End Sub
13.5. Show Method
Cú pháp : [Object.]Show
Tác dng : làm xut hin ca s Form.
Private Sub Chehien_Click()
Dim Msg ' Declare variable.
Hide ' Hide form.
Msg = "Choose OK to make the form reappear."
MsgBox Msg ' Display message.
Lp trình trc quan
101
Show ' Show form again.
End Sub
13.6. Item Method
Cú pháp : [Object.]Item(Index)
Tác dng : sp xếp li các thành viên trong Collection theo th t ca khóa ch định trong
Index.
Ví d :
Dim SmithBillBD As Object
Dim SmithAdamBD As Object
Set SmithBillBD = Birthdays.Item("SmithBill")
Set SmithAdamBD = Birthdays("SmithAdam")
13.7. Move Method
Cú pháp : [Object.]Move Left [, Top][, Width][, Height]
- Object: tên Object cn chuyn dch.
- Left : qui định giá tr cn dch chuyn sang bên trái.
- Top : qui định dch chuyn lên phía trên.
- Width : qui định độ rng mi ca đối tượng.
- Height : qui định độ cao mi ca đối tượng.
Tác dng : cho phép di chuyn và điu chnh kích thước ca đối tượng.
Ví d :
Private Sub dichuyen_Click()
Dim Inch, Msg ' Declare variables.
Msg = "Choose OK to resize and move this form by "
Msg = Msg & "changing the value of properties."
MsgBox Msg ' Display message.
Inch = 1440 ' Set inch in twips.