Môn tin học đại cương - Phần 5 pot - Pdf 18

1
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 218
MÔN TIN HỌC
Chương 9
ĐỊNH NGHĨA THỦ TỤC & SỬ DỤNG
Chương 9 : Định nghĩathủ tục& sử dụng
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 219
Nhắclạicấutrúctổ chức1 chương trình
 Mộtchương trình thường cung cấp nhiềuchứcnăng cho người dùng ⇒
Chương trình thường là 1 hệ thống phứctạp. Để dễ quảnlývàxâydựng
chương trình, ngườitathường chia nó ra nhiều đơnvị nhỏ hơn. Hiệncó2
phương pháp chia nhỏ chương trình :
 phương pháp có cấutrúc
: chương trình đượcchianhỏ thành nhiều
module chứcnăng, mỗi module chứa nhiều điểmnhập (entry), mỗi
điểmnhập cung cấp1 dịch vụ (chứcnăng) rõ ràng, đơngiản nào đó.
Ta gọimỗi điểmnhậplàthủ tụcthựchiệnchứcnăng tương ứng.
 phương pháp hướng đốitượng
: chương trình đượcchianhỏ thành
nhiều đốitượng, mỗi đốitượng chứa nhiều điểmnhập (entry), mỗi
điểmnhập cung cấp1 dịch vụ (chứcnăng) rõ ràng, đơngiản nào đó.
Ta gọimỗi điểmnhậplàthủ tụcthựchiệnchứcnăng tương ứng.
 Tóm lại, dù dùng phương pháp chia nhỏ chương trình nào thì đơnvị chức
năng nhỏ nhấtmàngườilậptrìnhcóthể xây dựng và dùng (gọi) lại nhiều
lần trong chương trình là thủ tục.

Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 221
Tầmvựcsử dụng thủ tục trong VB
 Trong mỗi standard module, ta có thể xác định tầmvựcsử dụng củatừng thủ
tục:
 cụcbộ trong module
: dùng từ khóa Private trong lệnh định nghĩathủ tục.
 toàn cục trong chương trình
: dùng từ khóa Public trong lệnh định nghĩathủ
tục.
 Trong mỗi form hay class module, ta có thể xác định tầmvựcsử dụng củatừng
thủ tục:
 cụcbộ trong module (đốitượng)
: dùng từ khóa Private trong lệnh định nghĩa
thủ tục.
 cụcbộ trong Project
: dùng từ khóa Friend trong lệnh định nghĩathủ tục.
 công cộng (ai dùng cũng được)
: dùng từ khóa Public trong lệnh định nghĩa
thủ tục. Các thủ tụccôngcộng của đốitượng đượcgọi là method để phân
biệtvới Sub/Function.
 Về nguyên tắc, các thủ tục Property Get, Set và Let đềuphảicótầmvực
công cộng (dùng từ khóa Public).
Chương 9 : Định nghĩathủ tục& sử dụng
3
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 222

 Lệnh gán name = expression cho phép gán giá trị trả về cho lệnh gọi
hàm.
 Lệnh Exit Function cho phép trả ngay điềukhiểnvề lệnh gọi hàm này
(thay vì thựcthitiếpcáclệnh còn lạicủa hàm).
Chương 9 : Định nghĩathủ tục& sử dụng
4
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 224
Cú pháp định nghĩa hàm - Function (tt)
 arglist là danh sách các tham số hình thức, mỗi tham số đượccách
nhau bởidấu ',' và được định nghĩa theo cú pháp như sau :
[Optional] [ByVal | ByRef] [ParamArray] varname[( )] [As type]
[=defaultvalue]
 Dùng từ khóa Optional để khai báo rằng tham số tương ứng là nhiệmý
trong lúc gọi hàm : truyền hay không cũng được. Trong trường hợp này
ta nên dùng thêm thành phần[= defaultvalue] để xác định giá trị cần
truyền nhiệmý.
 Dùng từ khóa ByRef để khai báo việctruyền tham số bằng tham khảo,
đây là chếđộtruyềnthamsố nhiệmý. Ngượclại dùng từ khóa ByVal để
khai báo cơ chế truyền tham số bằng giá trị.
 Chỉ có thể dùng từ khóa ParamArray cho tham số cuối trong danh sách
tham số, tham số này cho phép ta truyền bao nhiêu tham số cụ thể cũng
được.
Chương 9 : Định nghĩathủ tục& sử dụng
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 225

 Sự khác biệtgiữa hàm và thủ tục là hàm luôn trả về giá trị kếthợpvới
tên hàm, còn thủ tục thì không trả về trị kếthợpvớitênthủ tục(nhưng
nó vẫncóthể trả kếtquả về thông qua các tham số truyềnbằng tham
khảo).
 Nếu quan sát kỹ, ta thấy các hàm xử lý sự kiệnchocácđốitượng giao
diện đềulàSub, chứ không phải là Function, do đótừđây ta dùng đoạn
câu "thủ tụcxử lý sự kiện" thay cho "hàm xử lý sự kiện".
Chương 9 : Định nghĩathủ tục& sử dụng
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 227
Cú pháp định nghĩa method Get thuộctínhđốitượng
 Cú pháp để định nghĩa 1 method Get :
[Public | Private | Friend] [Static] Property Get name [(arglist)] [As
type]
[statements]
[name = expression]
[Exit Property]
[statements]
[name = expression]
End Property
 Ý nghĩacủacáctừ khóa Public, Private, Friend, Static cũng như các
thành phần arglist, Exit Property, statements, [name = expression]
giống y như trong lệnh định nghĩa hàm mà chúng ta đãgiớithiệu ở
những slide trước.
 Method Get cho phép bên ngoài có thểđọcgiátrị của 1 thuộc tính bên
trong đốitượng nhưng dướisự kiểm soát của đốitượng đó.
Chương 9 : Định nghĩathủ tục& sử dụng
6

thành phần arglist, Exit Property, statements giống y như trong lệnh
định nghĩa hàm mà chúng ta đãgiớithiệu ở những slide trước.
 Method Set cho phép bên ngoài có thể gán tham khảo cho 1 thuộc tính
bên trong đốitượng nhưng dướisự kiểm soát của đốitượng đó.
 Sự khác biệtgiữa method Let và Set là Let gán giá trị thuộc1 kiểucổ
điển, còn Set gán tham khảo vào 1 thuộctínhcókiểulàclass đốitượng.
Chương 9 : Định nghĩathủ tục& sử dụng
7
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 230
Gọithủ tục
 Sau khi thủ tục đã được định nghĩa, ta có thể sử dụng (gọi) nó nhờ lệnh
gọithủ tục. Cú pháp gọithủ tục đã đượcmiêutả trong slide 216 (chương
8). Do Function là dạng thủ tụccótrả về kếtquả kếthợpvới tên hàm
nên lệnh gọi hàm thường được dùng trong 1 biểuthức(lệnh gọi hàm là
biểuthứccơ bản để cấu thành biểuthứcphứctạphơn).
 Thí dụ, giả sử ta đã định nghĩa hàm tính n! tên là giaithua(n) thì ta có thể
gọinónhư sau :
n = 8
MsgBox (n & "! = " & giaithua(n))
 Thí dụ, giả sử ta đã định nghĩathủ tục hoán vị 2 số nguyên tên là
Hoanvi(a,b) thì ta có thể gọinónhư sau :
n = 8
m = 4
Call Hoanvi (n,m) ' hoặc Hoanvi n,m
' Lúc này n = 8 và m = 4
Chương 9 : Định nghĩathủ tục& sử dụng
Khoa Công nghệ Thông tin

cầnthựcthisẽ không thể truy xuấtdữ liệucủathủ tụcgọi. Tuy nhiên
cách truyềnbằng giá trị chỉ thích hợp cho các tham số IN (truyềntừ
phầntử gọi đếnthủ tụccầngọi) có kiểuvôhướng (scalar).
 Để truyềnhiệuquả tham số có nội dung chiếmnhiềuô nhớ hay để nhận
kếtquả ta sẽ phải dùng cơ chế truyềnbằng tham khảo(địachỉ). Để định
nghĩathamsố hình thức đượctruyềnbằng tham khảo, ta dùng từ khóa
ByRef kếthợpvới tham số hình thức đó. Khi gọithủ tục, địachỉ của
tham số thực sẽ đượctruyềnchothủ tụccầnthựcthi. Với đặc điểm này,
tham số thựcphảilàbiếnchứ không thể là biểuthức.
 Lưuý rằng nếu ta không dùng từ khóa ByRef hay ByVal kếthợpvới
tham số hình thức thì default nó đượctruyềnbằng tham khảo.
Chương 9 : Định nghĩathủ tục& sử dụng
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 233
// version truyềnbằng giá trị
Private Sub Hoanvi1(ByVal x As Integer, ByVal y As Integer)
Dim tmp As Integer
tmp = x
x = y
y = tmp
End Sub
// version truyềnbằng tham khảo
Private Sub Hoanvi2(ByRef x As Integer, ByRef y As Integer)
Dim tmp As Integer
tmp = x
x = y
y = tmp
End Sub

Slide 235
Các thủ tục định sẵncủaVB
 Về nguyên tắc, ngườilập trình phải định nghĩathủ tục (Sub, Function,
Property) trướckhicóthể sử dụng lại(gọi) nó. Tuy nhiên, VB đã định
nghĩarất nhiềuthủ tụcdạng Sub, Function để thựchiệncácchứcnăng
rấtphổ biến, ngườilậptrìnhcóthể gọi chúng bấtcứ khi nào cầnthiết. Ta
gọicácthủ tục này là các thủ tục định sẵncủa VB.
 Nếuchưa đòi hỏi độ chính xác cao, ngườitacòngọicácthủ tục định
sẵncủa VB là các lệnh thựcthi.
 Sau đây ta chúng ta hãy làm quen với1 số thủ tụcthường dùng.
Chương 9 : Định nghĩathủ tục& sử dụng
10
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 236
Hàm hiểnthị form thông báo
 Cú pháp MsgBox(prompt [, buttons] [, title] [, helpfile, context])
trong đó:
 prompt là biểuthứcchuỗimiêutả thông báo cầnhiểnthị.
 buttons là biểuthứcsố miêu tả số lượng và loại button đượchiểnthị
trong thông báo, nhiệm ý là 0 nghĩalàchỉ có button Ok đượchiểnthị.
 title là biểuthứcchuỗimiêutả title bar của form thông báo.
 helpfile là biểuthứcchuỗimiêutảđường dẫn file Help được dùng với
form thông báo (theo cơ chế context-sensitive Help).
 context là biểuthứcsố miêu tả chỉ số của "topic" cần dùng trong file
Help
 Thường để gọidễ dàng hàm MsgBox, ta chỉ cầnmiêutả tham số
prompt bắtbuộc.
Chương 9 : Định nghĩathủ tục& sử dụng

CDec (expression) : chuyểntrị củabiểuthứcvề kiểu Decimal
CInt (expression) : chuyểntrị củabiểuthứcvề kiểu Integer
CLng (expression) : chuyểntrị củabiểuthứcvề kiểu Long
CSng (expression) : chuyểntrị củabiểuthứcvề kiểu Single
CStr (expression) : chuyểntrị củabiểuthứcvề kiểuString
CVar (expression) : chuyểntrị củabiểuthứcvề kiểu Variant
Chương 9 : Định nghĩathủ tục& sử dụng
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 239
Các hàm thư viện liên kết động
 Trong code VB, ngoài việcgọicácthủ tục được định nghĩa trong Project và các
thủ tục định sẵn, ngườilậptrìnhcòncóthể gọi các hàm trong các thư viện liên
kết động.
 1 thư viện liên kết động có dạng *.dll thường đượcxâydựng bằng ngôn ngữ
VC++ và chứa 1 danh sách các hàm dịch vụ. Khi chương trình VB gọi1 hàm
trong file thư viện DLL, file đượcnạpvàobộ nhớ và hàm được liên kếtvàovùng
nhớ củachương trình để chươngtrìnhcóthể gọi được hàm cầngọi. Các hàm
thư việnDLL đượcsử dụng chung cho mọiphầnmềm đang chạy, nghĩalàchỉ
có 1 bản (copy) củahàmthư viện DLL trong bộ nhớ máy tính để phụcvụ cho
mọi ứng dụng gọi nó.
 Ta có thể coi Windows như 1 thư việnphầnmềm DLL lớn, thư viện này cung
cấprất nhiều hàm dịch vụ khác nhau, ngườitagọicáchàmnàylàcáchàmAPI
(Application Programming Interface). Chương trình VB có thể gọibấtkỳ hàm
nào trong thư việnnàytheocơ chế liên kết động nhưđã trình bày ở trên.
 Trước khi 1 hàm DLL được dùng trong module VB nào đó, ta cần khai báo đặc
tả hàm DLL này nhờ lệnh Declare của VB với cú pháp được trình bày trong
slide 153 (chương 6).
Chương 9 : Định nghĩathủ tục& sử dụng

cứng củacácthiếtbị và cung cấp cho ngườilập trình 1 giao tiếpsử dụng duy
nhất, độclậpvớithiếtbị.
Chương 10: Tương tác giữangười dùng & chương trình
13
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 242
Kiếntrúctương tác giữangười dùng & ứng dụng VB
Chương 10: Tương tác giữangười dùng & chương trình
Driver
Keyboard
Driver
Mouse
Driver
Printer
Driver
ViewSonic
Monitor
AnyKey
Keyboard
Logitech
Mouse
HP Laser 5
Screen Object
Keyboard
Mouse
Windows
My Visual Basic Application
Ứng dụng giao tiếp

 VB tạoranhững đốitượng giao diện cao cấpvàdễ dùng : mỗi đốitượng
giao diện (form, window, listbox, ) đềucóthể giao tiếptrựctiếpvớingười
dùng để nhập/xuấtdữ liệu, chờ nhậnsự kiệnhay chủđộng thông báo cho
user.
Chương 10: Tương tác giữangười dùng & chương trình
14
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 244
Kiếntrúctương tác giữangườidùng& ứng dụng VB (tt)
 Sau khi đãbiếtkiếntrúcgiaotiếpI/O của ứng dụng VB, khi cầngiaotiếpvới
người dùng, ta nên :
 dùng các đốitượng giao diệncaocấp(định sẵncủa VB hay ActiveX
Control).
 trong 1 số trường hợpcầnthiếttasẽ dùng các đốitượng của Windows như
Printer và Screen.
 trong 1 số trường hợptốicầnthiếttamớigọi các hàm trong giao tiếpcủa
device driver.
 và tuyệt đối không nên truy xuấttrựctiếpphầncứng thiếtbị I/O vì rấtkhó
khăn, không an toàn, dễ bị tranh chấpvớicácứng dụng chạy đồng thời.
 Tương tác vớingười dùng thông qua các đốitượng giao diện đượcthựchiệnnhư
sau :
 nhậpliệu/nhậnlệnh thông qua các thủ tụcxử lý sự kiệncủaphầntử giao
diệntương ứng.
 xuấtkếtquả/thông báo bằng cách gán kếtquả vào thuộc tính tương ứng của
đốitượng giao diện hay dùng các method vẽđồhọatổng quát.
Chương 10: Tương tác giữangười dùng & chương trình
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM

trong đó:
 ControlName là tên của điềukhiểnnhậnsự kiệnkeypress.
 KeyAscii là mã ký tự ANSI của phím được ấn/thả.
 Mỗi đốitượng có thủ tụcxử lý biếncố riêng, thủ tụcnàycũng là method của đối
tượng tương ứng.
Chương 10: Tương tác giữangười dùng & chương trình
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 247
Private Sub Text1_KeyDown (KeyCode As Integer, Shift As Integer)
Dim ShiftDown, AltDown, CtrlDown, Txt
ShiftDown = (Shift And vbShiftMask) > 0
AltDown = (Shift And vbAltMask) > 0
CtrlDown = (Shift And vbCtrlMask) > 0
If KeyCode = vbKeyF2 Then ' Display key combinations.
If ShiftDown And CtrlDown And AltDown Then
Txt = "SHIFT+CTRL+ALT+F2."
ElseIf ShiftDown And AltDown Then
Txt = "SHIFT+ALT+F2."
ElseIf ShiftDown And CtrlDown Then
Txt = "SHIFT+CTRL+F2."
ElseIf CtrlDown And AltDown Then
Txt = "CTRL+ALT+F2."
ElseIf ShiftDown Then
Txt = "SHIFT+F2."
ElseIf CtrlDown Then
Txt = "CTRL+F2."
ElseIf AltDown Then
Txt = "ALT+F2."

Giao tiếpvớichuột thông qua các đốitượng giao diện
 Tương tự như bàn phím, khi người dùng thao tác chuột, VB sẽ tạora1 trong5
biếncố sau đây và gởivề cho phầntửđược 'focus' hiện hành :
 MouseMove : sự kiệnxảy ra khi ngườisử dụng di chuyểnchuột.
 MouseDown : sự kiệnxảy ra khi ngườisử dụng ấnbấtkỳ nút nào trên chuột
(tùy loạichuột mà nó có 1/2/3 nút).
 MouseUp : sự kiệnxảy ra khi ngườisử dụng thả nút vừa ấnra.
 Click : sự kiệnxảyrakhingườisử dụng ấnvàthả chuột.
 DblClick : sự kiệnxảyrakhingườisử dụng 'Click' chuột liên tụchailần
trong 1 thờigianđủ nhỏ (do người dùng qui định chung cho môi trường
Windows).
Chương 10: Tương tác giữangười dùng & chương trình
17
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 250
Thủ tụcxử lý sự kiện MouseDown & MouseUp
 Thủ tụccódạng sau :
Private Sub ControlName_MouseDown (Button As Integer, Shift As Integer,
x As Single, y As Single)
và Private Sub ControlName_MouseUp (Button As Integer, Shift As Integer, x
As Single, y As Single)
trong đó:
 ControlName là tên của điềukhiểnnhậnsự kiện MouseDown/MouseUp.
 Button là giá trị miêu tả trạng thái các nút củachuột được ấn/thả (là mộtdãy
các bit với bit 0 cho nút trái, bit 1 cho nút phải và bit 2 cho nút giữa).
 Shift là giá trị miêu tả trạng thái ấngiữ các phím điềukhiển(làmột dãy bit
với bit 0 cho phím SHIFT, bit 1 cho phím CTRL, bit 2 cho phím ALT).
 x, y miêu tả tọa độ (x,y) củavị trí chuột được ấn/thả trên màn hình.

phụ này để xử lý chi li hơn, bạn nên dùng thủ tụcxử lý sự kiện MouseDown
hay MouseUp.
Chương 10: Tương tác giữangười dùng & chương trình
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 253
' biến qui định trạng thái vẽ/không vẽ
Dim PaintNow As Boolean
'Khởi động thông số vẽ
Private Sub Form_Load ()
DrawWidth = 10 ' Use wider brush.
ForeColor = RGB(0, 0, 255) ' Set drawing color.
End Sub
Private Sub Form_MouseDown (Button As Integer, Shift As Integer, X As
Single, Y As Single)
PaintNow = True ' Enable painting.
End Sub
Private Sub Form_MouseUp (Button As Integer, Shift As Integer, X As Single, Y As Single)
PaintNow = False ' Disable painting.
End Sub
Private Sub Form_MouseMove (Button As Integer, Shift As Integer, X As Single, Y As
Single)
If PaintNow Then
PSet (X, Y) ' Draw a point.
End If
End Sub
Thí dụ thủ tụcxử lý các sự kiệnchuột
Chương 10: Tương tác giữangười dùng & chương trình
19

 Spc(n) qui định n ký tự trống đượcin ra.
 Tab(n) qui định n ký tự Tab đượcin ra, mỗi Tab đưa pointer in qua phảithêm
1 cột(vị trí các cột đượcqui định trước).
 expression là biểuthứcchuỗihay số cầnin.
 charpos qui định vị trí in dữ liệukế tiếp. Nếu charpos = ";" thì dữ liệuin kế
tiếpsẽ đượcin liền ngay. Nếu charpos = "," thì sẽ thêm 1 Tab trướckhiin dữ
liệukế. Nếu không có charpos saucùngthìvị trí in sẽ dờixuống đầudòng
kế tiếp.
 Thông tin về font chữ phải đượcthiếtlậptrướcthủ tục Print thông qua các thuộc
tính sau của đốitượng vẽ : FontName, FontSize, FontItalic, FontBold,
 Nên thiếtlậpthuộc tính CurrentX, CurrentY để qui định rõ ràng vị trí in củamỗi
lệnh Print.
Chương 10: Tương tác giữangười dùng & chương trình
20
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 256
Thí dụ về việc dùng thủ tụcPrint
 Đoạn code sau đây sẽ hiểnthị 3 hàng vănbản trong hộpthoại About Box được
chỉnh giữa:
Const strAbout1 = "Trinh MiniIE"
Const strAbout2 = "Version 1.0"
Const strAbout3 = "Written by : Nguyen Van Hiep"
Private Sub Form_paint()
ScaleMode = vbPixels
' Xác định vị trí để chuỗi strAbout1 nằmgiữahộpthoại
CurrentX = (ScaleWidth - TextWidth(strAbout1)) / 2
CurrentY = 40
Print strAbout1

- + % ( ) space miêu tả chỉnhxáckýtự tương ứng.
Chương 10: Tương tác giữangười dùng & chương trình
21
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 258
 Thí dụ về chỉnh dạng dữ liệusố :
Format syntax Result
Format(8315.4, "00000.00") 08315.40
Format(8315.4, "#####.##") 8315.4
Format(8315.4, "##,##0.00") 8,315.40
Format(315.4,"$##0.00") $315.40
 Thí dụ về chỉnh dạng dữ liệu ngày tháng :
Format(Now, "m/d/yy") 1/27/93
Format(Now, "dddd, mmmm dd, yyyy") Wednesday, January 27, 1993
Format(Now, "d-mmm") 27-Jan
Format(Now, "mmmm-yy") January-93
Format(Now, "hh:mm AM/PM") 07:18 AM
Format(Now, "h:mm:ss a/p") 7:18:00 a
Format(Now, "d-mmmm h:mm") 3-January 7:18
Thí dụ về hàm Format
Chương 10: Tương tác giữangười dùng & chương trình
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 259
Thủ tụcPSet: vẽđiểmtrênthiếtbị xuấtluậnlý
 Thủ tụccódạng sau :
[objName.]PSet [Step] (x, y), [color]

 nếucóthôngsố B, thủ tục Line sẽ vẽ hình chữ nhậtmà2 đỉnh chéo được
xác định bởi2 điểm. Trong trường hợp này nếucóthôngsố F, hình chữ nhật
sẽđược tô cùng màu vớimàuvẽ, ngượclạithuộc tính FillColor và FillStyle
của đốitượng nhậnkếtquả sẽ qui định màu đượctô.
Chương 10: Tương tác giữangười dùng & chương trình
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 261
Thủ tụcCircle : vẽ hình tròn/ellipse trên thiếtbị xuấtluậnlý
 Thủ tụccódạng sau :
[objName.]Circle [Step] (x, y), radius, [color, start, end, aspect]
trong đó:
 objName là tên của đốitượng nhậnkếtquả vẽ (Printer, Form, PictureBox),
default là form hiện hành.
 (x,y) miêu tả tọa độ tâm điểmcủa vòng tròn/ellipse/arc cầnvẽ trên đốitượng
nhậnkếtquả. Nếutừ khóa Step được dùng trướctọa độ (x,y) thì (x,y) là tọa
độ tương đốiso vớivị trí hiện hành đượcxácđịnh bởi2 thuộc tính CurrentX,
CurrentY của đốitượng nhậnkếtquả. Nếutừ khóa Step không đượcdùng
thì (x,y) là tọa độ so với điểm(0,0).
 radius miêu tả bán kính.
 color là giá trị kiểu Long miêu tả màu vẽ theo hệ màu RGB.
 start, end miêu tả góc xác định điểm đầuvàcuốicủaarc theođơnvị radian
(default điểm đầulà0 vàđiểmcuốilà2π).
 aspect miêu tả tỉ lệ kích thướcdọc/ngang của ellipse (default là 1 để vẽ
vòng tròn).
Chương 10: Tương tác giữangười dùng & chương trình
23
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM

vbPoints 2 Point (72 points per logical inch).
vbPixels 3 Pixel (smallest unit of monitor or printer resolution).
vbCharacters 4 Character (horizontal = 120 twips per unit;
vertical = 240 twips per unit).
vbInches 5 Inch.
vbMillimeters 6 Millimeter.
vbCentimeters 7 Centimeter.
vbHimetric 8 HiMetric
vbContainerPosition 9 Units used by the control's container to determine
the control's position.
vbContainerSize 10 Units used by the control's container to determine
the control's size.
Chương 10: Tương tác giữangười dùng & chương trình
24
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 264
Chi tiếtvề thuộc tính miêu tả màu
 Mỗimàuở chếđộTrueColor đượctổng hợptừ 3 thành phầnmàucơ bản Red -
Green - Blue. Trọng số củamỗi thành phầnmàuđượcmiêutả bởi1 giátrị Byte
(từ 0 đến255). Xácđịnh 1 màu là xác định 3 thành phầnmàucủanó.
 Các thuộc tính BackColor, ForeColor, FillColor có giá trị miêu tả màu dạng RGB
với qui định sau :
Color Red Value Green Value Blue Value
Black 0 0 0
Blue 0 0 255
Green 0 255 0
Cyan 0 255 255
Red 255 0 0

Slide 266
Chi tiếtvề thuộctínhmẫutônền
 Thuộc tính FillStyle có giá trị miêu tả 1 mẫutônềnvới qui định sau :
Constant Setting Description
VbFSSolid 0 Solid
VbFSTransparent 1 (Default) Transparent
VbHorizontalLine 2 Horizontal Line
VbVerticalLine 3 Vertical Line
VbUpwardDiagonal 4 Upward Diagonal
VbDownwardDiagonal 5 Downward Diagonal
VbCross 6 Cross
VbDiagonalCross 7 Diagonal Cross
 Thí dụ ta viếtlệnh gán : Form1.FillStyle = VbVerticalLine để thiếtlậpmẫutô
nềncủacácphầntử trong form là các đường thẳng đứng.
Chương 10: Tương tác giữangười dùng & chương trình
Khoa Công nghệ Thông tin
Trường ĐH Bách Khoa Tp.HCM
Môn : Tin học
Slide 267
Chi tiếtvề thuộctínhmẫuvẽđường viền
 Thuộc tính DrawStyle có giá trị miêu tả 1 mẫuvẽ đường viềnvớiqui định sau :
Constant Setting Description
VbSolid 0 (Default) Solid
VbDash 1 Dash
VbDot 2 Dot
VbDashDot 3 Dash-Dot
VbDashDotDot 4 Dash-Dot-Dot
VbInvisible 5 Transparent
VbInsideSolid 6 Inside Solid
 Thí dụ ta viếtlệnh gán : Form1.DrawStyle = VbDash để thiếtlậpmẫuvẽđường


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status