logo

Visual Basic Bách Khoa-Chương 3-Xử dụng class module

Tham khảo tài liệu 'visual basic bách khoa-chương 3-xử dụng class module', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Chương 3 : Xử dụng Class Module Class Module là gì ? Là tổng hợp của các bộ phận trong ứng dụng của các bạn.  Gọi  tắt là COM ( Component Object Model ).  Phương pháp viết chương trình hiện đại là xử dụng  components, một cơ chế trong ứng dụng của các bạn. Như chúng ta biết : Hệ thống viễn  thông ngày càng phát triển và đóng một vai trò quan trọng trong đời sống hàng ngày của mọi  người trên thế giới. Và trong hệ thống viễn thông, đại đa số, họ xử dụng COM components.   Do đó, trong việc viết chương trình ứng dụng, các bạn không thể thiếu các COM components  được.  Ứng dụng của các bạn, nếu được tách ra thành từng cơ cấu (components) thì rất dể  dàng trong việc phát triển (developement) và giử gìn...Sau đây, chúng tôi sẽ lần lượt giải thích  làm sau việc xử dụng Class Module là hữu ích.  Chương 3 _ Phần 1_ Ðoạn 1 : Xử dụng object và components COM components, chính nó là bộ phận mang lấy một chức năng nhất định trong ứng  dụng.  Chính nó cũng là một ứng dụng, cũng có code, methodes, functions và được hoán  chuyển thành .dll, .bas,..., và từ đó, nó được xử dụng như COM.  Dưới đây là hình ảnh cho thấy các bạn có thể tạo thành một component và cùng một  lúc có thể tạo thành 2 instances lúc run time  Khi bạn đã có Components rồi, bạn có thể lấy từ trong dự án của bạn hay là dự án ở  ngoài... đều xử dụng được hết.    Chương 3_Phần 1_Ðoạn 2 : Những lợi ích khi xử dụng Components *Xử dụng nhiều lần : Khi các bạn tạo thành cho mình một bộ phận trong ứng dụng rồi  (component) thì bộ phận đó sẽ được xử dụng nhiều lần.  Hoặc trong ứng dụng của bạn nhưng  ở trong những form khác chẳng hạn...Hay là những người trong nhóm phát triển ứng dụng vẫn  có thể xử dụng component đó... Chỉ cần bạn bỏ bộ phận đó trong kho nhu liệu là bạn có thể xử dụng bất cứ lúc nào.  Với  Object browser, bạn có thể gọi component đó và xử dụng nhiều lần. *Làm giảm bớt sự phức tạp : Những người làm việc cùng nhóm với bạn sẽ không mất nhiều  thời gian và công sức khi tìm hiểu những chức năng từng bộ phận trong phương trình ứng  dụng. *Dể dàng trong việc sửa đổi : Khi cần thay đổi phương trình ứng dụng, các bạn không cần  phải tốn nhiều thời gian và tránh được rất nhiều bugs khi nâng cấp ứng dụng... Chương 3_Phần 1_Ðoạn 3 : Windows Distributed InterNet Applications Architecture Windows Distributed InterNet Architecture gọi tắt là Windows DNA, là hệ thống mới giúp cho  hệ thống viển thông được trao đổi thông tin dể dàng hơn.  Nó dựa trên cơ bản của gia đình  Windows (95, 98, NT, 2000...) cộng với các components đã được thiết lập từ bên trong hay  bên ngoài mà trao đổi các lượng thông tin giửa Client, Server, users, application... Một ứng dụng sẽ được nhiều người xử dụng đến trong tương lai là Web Application.  Và Web  Application không thể thiếu Windows DNA được.  Windows DNA được cấu tạo bởi công thức  sau đây : Integrated Storage ­­> Business Processes ­­> User Interface and Navigation Từ đó, các bạn đã thấy COM giử vai trò quan trọng như thế nào trong hệ thống viễn thông  hiện đại. Chương 3_Phần 1_Ðoạn 4 : Class Module là gì ? Các bạn muốn có một COM component trong ứng dụng của mình, chuyện đầu tiên là các bạn  phải có một class module trong ứng dụng của bạn trước.  Rối sau đó, các bạn có thể xử dụng  bộ phận COM đó trong suốt quá trình hoàn chỉnh ứng dụng hay cho các vay mượn tùy theo  yêu cầu của chương trình. Class Module, đơn giản là một loại Visual Basic code module.  Ðược viết dưới dạng *.cls và  tương tợ như *.bas , Khác biệt ở chổ là Class Module bao gồm chức năng (funtion) mà chức  năng này có thể xử dụng ở những form khác trong cùng một ứng dụng.  Mỗi một class module  ứng cho một bộ phận trong ứng dụng và các bạn có thể có vài thể loại class module trong ứng  dụng của mình. Ðể xử dụng class module, các bạn phải làm cho nó một instance, rồi sau đó thông qua  instance đó, mà các properties, methods, events của nó để rồi hoàn thành một cái class cho  ứng dụng. Thí dụ điển hình là như vầy :  Muốn có một Employee class mà nó có properties là : Lastname, Firstname.  Method là hired.  Bạn phải làm một instance cho Employee object.  Rồi sau đó, muốn tìm chi tiết về các nhân  viên bất cứ ở đâu trong ứng dụng, chúng ta chỉ cần xử dụng Employee class module mà thôi. Chương 3_Phần 2_Ðoạn 1 : Xử dụng Class Builder Ðể dể dàng cho việc tạo thành Class, Visual Basic có một công cụ gọi là Class Builder.  Nó tự  động làm cho bạn một số việc và chuyện của các bạn là điền vào chi tiết mà thôi.  Ðây là  công cụ để tạo thành Class : Theo các bước sau đây, các bạn sẽ có Class Builder trong ứng dụng của mình : 1. Trên Add_Ins menu, bấm ở Add­In Manager 2. Chọn VB 6 Class Builder Utilitytrong danh sách sẳn có. 3. Dưới Load Behavior, chọn Loaded/Unloaded, rồi bấm trên OK Theo những bước sau đây, các bạn có thể thêm  class vào ứng dụng của mình : 1. Trên Add­Ins menu, bấm trên Class Buider Utility 2. Trong Class Builder, bấm File menu, New và chọn Class 3. Trong Class Module Builder, thêm vào các chi tiết 4. Ðiền các chi tiết cần thiết vào phần Attributes và help file nếu có. Sau đây là những phần mà Class Builder bao gồm : Property Builder Method Builder Event Builder Attributes Chương 3_Phần 2_Ðoạn 2 : Class Module Events Ðể tạo dể dàng cho các bạn viết ứng dụng, Visual Basic đã viết sẳn cho các bạn 2 events.   Ðó là initialize và terminate Initialize event : Nhất định các bạn phải kiểm soát các nhu liệu hay tài liệu cần thiết cho ứng  dụng của mình, do đó, initialize event là event đầu tiên mình phải xử dụng.  Sau đây là các  hàng code : Private Sub Class_Initialize () 'Initialize Data iDept = 5 End Sub Terminate event : Dùng để chấm dứt công việc.  Sau đây là các hàng code  Private Sub Class_Terminate() 'Any termination code End Sub Và dỉ nhiên các bạn có thể thêm vào nhiều event nữa tùy theo yêu cầu của người xử dụng. Chương 3_Phần 2_Ðoạn 2 : Adding Component information and Help Vì có nhiều classes trong ứng dụng, cho nên để dể dàng trong việc xử dụng, chúng ta cần  phải thêm vào các chi tiết nói về chức năng của class đó.  Và mỗi khi mủi chuột chỉ đến đâu  thì những lời giải thích về chức năng đó hiện ra.  Theo các bước sau đây thì các bạn có thể  thêm vào các lời giải thích : 1. Mở project có class mà bạn sẽ xử dụng 2. Mở code window của class module đó 3. Trên Tools menu, bấm trên Procedure Attributes 4. Ðiền vào các ô trống Description và Help context ID Một cách khác nữa là : 1. Trên Project menu, bấm trên project properties 2. Ðiền vào tên Help file, rồi bấm OK Nhìn vào hình ảnh dưới đây, chúng ta sẽ thấy làm sao để điền thêm chi tiết vào bộ phận Class Chương 3 _Phần 2_Ðoạn 4 : Xử dụng Object Browser Ðể nhận xét một cách tổng quát một class trong ứng dụng, hãy xử dụng Oject Browser.   Object Browser trong Visual Basic là một công cụ dùng để nhìn xem các properties, methods,  events chứa đựng trong một class.  Trên View menu, bấm trên Object Browser, các bạn sẽ có  một Object Browser.  Theo các bước trên, các bạn sẽ có được : Có 2 bản danh sách cho thấy project có bao nhiêu classes?  Trong class có bao nhiêu  members ?...Và Object Browser cho chúng ta nhìn biết các bộ phận tron ứng dụng dể dàng  hơn. Chương 3 _Phần 3 _Ðoạn 1 : Tạo thành Property Property xác định nhu liệu hay chức năng của một class.  Thí dụ như một class Employee có  thể có các properties như FirstName, LastName, HireDate…Các bạn có thể xác định  property  trong ứng dụng của mình bằng 2 cách :  Xử dụng Public Variables : Các bạn không cần phải viết code khi property được hình thành,  bạn chỉ cần xác định Public variable để giử nhu liệu mà thôi.  Thí dụ như sau  Public FirstName As String Xử dụng Property Procedure : Dùng cách này nếu các bạn muốn viết code khi hình thành  property.  Với property procedure, các bạn có thể làm những việc sau đây :  • Tiến hành procedure khi các dử kiện của property được xác định  • Làm cho property có một chức năng nhất định như giao trả một nhu liệu giới hạn nào  đó.  • Không cho phép property thay đổi.  Property procedure có 3 phần : Set, Let, Get.  Khi hình thành property procedure, các bạn xác  định theo từng cặp, thí dụ như : Set và Get, Let và Get.  Bởi vì lý do giản dị là property set hay  let phải được tiến hành trước, rồi sau đó, procedure get mới có thể cung cấp nhu liệu mà  procedure Set hay Let xác định.  Như thí dụ điển hình sau đây :  Public Property Let FirstName(passedName As String) mvarFirstName = Ucase(passedName) End Property Public Property Get FirstName() As String FirstName = mvarFirstName End Property  Xử dụng default Property : Theo những bước sau đây các bạn sẽ xác định được  default property 1. Mở class mà nó có chứa đựng property  2. Trên Tools menu, chọn Procedure Attributes  3. Trong khung ảnh Procedure Attributes, bấm nút Advanced  4. Trong danh sách các property, chọn lấy property mà bạn muốn nó trở thành default  5. Trong danh sách Procedure ID, chọn Default rồi bấm nút OK  Các bạn sẽ thấy hình ảnh procedure attributes sau đây Chương 3_Phần 3_Ðoạn 2 : Tạo thành Methods Methods đại diện cho một chức năng trong ứng dụng của bạn mà class bao gồm.  Thí dụ như  class Employee có 2 methods là Hire và PayIncrease.  Ðể tạo thành method cho một bộ phận  trong ứng dụng, bạn chỉ cần tạo thành Public Sub hay là Function procedure trong class  module đó.  Sau đây là thí dụ làm sao để tạo thành một method là thêm dữ kiện vào trong kho nhu liệu :  Public Function Hire() As Boolean ‘ add employee record to database here MsgBox “Employee was added to the Database” ‘ if successful Hire = True End Sub Sau đây là thí dụ để tạo thành method tăng lương cho nhân viên :  Public Function PayIncrease (dPercent As Double) As Integer mvarSalary = mvarSalary * (1 + dPercent) End Function Chương 3_Phần 3_Ðoạn 3 : Xử dụng Named Constants  Khi các bạn xử dụng cách thay thế (variables) thì trong suốt quá trình ứng dụng tiến hành,  variables sẽ giao trả cho bạn nhiều nhu liệu chứa trong Database (Kho nhu liệu).  Nhưng với  Named Constants (thay thế bằng cách đặt tên), các bạn sẽ có lợi điểm là Named Constant chỉ  giao trả một nhu liệu nhất định mà thôi.  Thí dụ như trong trường hợp phải xài 2 nút Yes và No  cho một lựa chọn, bạn chỉ cần xài Named Constant là vbYesNo mà thôi.  Tạo thành Named Constants : Ðơn giản như chúng ta xử dụng variable vậy.  Sau đây là thí  dụ làm sao để có Named Constant tên là JobLevel  Public Enum JobLevel jExecutive = 1 jManagement = 2 jStaff = 3 End Enum  Với Named Constant này, bạn có thể thêm method vào trong class module của mình.  Như  method xem cấp bậc việc làm của nhân viên như sau :  Public Sub CheckExecutiveStatus(iLevel As JobLevel) If iLevel = jExecutive Then MsgBox “Executive Level Status Approved” Else MsgBox “Executive Status Denied” End If End Sub Xử dụng Enumerations (cách xếp thứ tự bằng số) như là Property value : Các bạn đã có  Named  Constant, các bạn cũng đã biết property value đi theo từng cặp Set và Get hay là Let  và Get...Thì để xác định một chứ năng giao trả một dử kiện nhất định cho class module của  mình, phương pháp hữu hiệu nhất là xử dụng Enumerations Property value.  Thí dụ bạn xáx  định một property có tên là ActiveJobLevel thì hãy theo những bước sau đây :  Private mvarJobLevel As JobLevel Public Property Let ActiveJobLevel (jl As JobLevel) mvarJobLevel = jl End Property Public Property Get ActiveJobLevel () As JobLevel ActiveJobLevel = mvarJobLevel End Property  Chương 3_Phần 3_Ðoạn 4 : Thêm Events vào trong Class Module Trước đó chúng ta đã biết Visual Basic có sẳn 2 events là Initialize và Terminate.  Và chúng ta  cũng có thể thêm events vào trong class của mình tùy theo yêu cầu.  Thí dụ như chúng ta có  một component gọi là COrder.  Chúng ta có thể dựng nên một event gọi là Status khi COrder  tiến hành.  Theo 2 bước sau đây, chúng ta có thể thêm events vào trong class :  1. Declare the event (Nhận định the event)  2. Raise the event (Dựng lên the event)  Nhận định event : Xử dụng keyword là Event để nhận định.  Chẳng hạn như :  Public Event Status(ByVal StatusText As String) Dựng lên event : Xử dụng RaiseEvent statement để dựng lên event.  Chẳng hạn như :  Public Sub SubmitOrder() ‘code to submit an order goes here RaiseEvent Status (“Checking Credit...”) ‘code to check the credit goes here RaiseEvent Status (“Processing Order...”) ‘code to process an order goes here End Sub Những liên hệ khác với component : Khi nhận định Event, chúng ta có thể xử dụng ByVal  (by value) hay ByRef (by reference).  Do đó tùy theo trường hợp nhận định event mà chúng ta  dựng event lên. Nếu ByRef, chúng ta phải làm sao để class có thể trao đổi nhu liệu và event  được tiến hành.  Chẳng hạn như thí dụ sau đây :  Dim iLimit As Integer iLimit = 400 ‘raise the event to be handled by the client RaiseEvent LimitChanged(iLimit) ‘now check to see if the client changed the limit If iLimit 400 Then ‘client did not accept the new limit End If Chương 3_Phần 3_Ðoạn 5 : Dựng Errors cho class Như chúng ta đã biết, không làm sao tránh khỏi bugs tron ứng dụng, cho nên chúng ta phải  dựng nên một hay nhiều bộ phận quản lý Errors trong ứng dụng.  Ðể dựng nên bộ phận quản  lý Errors, hãy theo công thức sau đây :  ERR.Raise Number, Source, Description, HelpFile, HelpContext  Cẩn thận nhớ đừng để trùng Errors number đã có sẳn trong Visual Basic.  Sau đây là một thí  dụ về Errors handler  Err.Raise vbOjectError + 100, “CEmployee”, “Employee could not be added” 
DMCA.com Protection Status Copyright by webtailieu.net