Bảng 65.Mô tả các control trong màn hình xem đề thi đã tạo

Một phần của tài liệu Xây dựng hệ thống quản lý ngân hàng câu hỏi trắc nghiệm (Trang 89 - 95)

Hệ thống được thiết kế sử dụng Automation để thực hiện chức năng xuất đề thi ra file Word. Sau đây là phần giới thiệu về Automation và Automation Word:

Sơ nét về Automation:

Automation (trước đây được biết đến với tên gọi là OLE Automation) là một cơ chế cho phép một ứng dụng A thao tác với các ứng dụng được cài đặt trong ứng dụng B, hoặc phơi bày các đối tượng của ứng dụng A để các ứng dụng khác có thể truy xuất và thao tác được các đối tượng này. Nói cách khác, Automation là một cơ chế cho phép điều khiển ứng dụng B từ ứng dụng A. Có 2 loại Automation:

 Automation cục bộ (Local Automation): các đối tượng và chức năng của ứng dụng A được phơi bày nằm trên cùng một máy với ứng dụng B.

 Automation từ xa (Remote Automation): các đối tượng và chức năng của ứng dụng A được phơi bày nằm trên một máy khác với ứng dụng B, khi đó ứng dụng B phải truy cập đến ứng dụng A qua hệ thống mạng.

Các khái niệm:

 Automation server: là các ứng dụng (thuộc kiểu COM server) phơi bày các chức năng của nó thông qua giao diện COM cho các ứng dụng khác. Các ứng dụng sử dụng các chức năng đó gọi là Automation client.

 Automation client: là các ứng dụng sử dụng, thao tác các đối tượng, chức năng được phơi bày của Automation server. Có 2 loại Automation client:

 Client động: là các client lấy thông tin về các thuộc tính và phương thức của Automation server trong lúc chạy chương trình (run time).

 Client tĩnh: là các client lấy thông tin về các hàm và phương thức của Automation server trong lúc biên dịch (compile time).

.Phân tích thiết kế hệ thống Trang

Hình 57.Mô hình Automation Client-Automation Server

Việc phơi bày các đối tượng của server giúp cho các client có thể thực hiện tự động hóa các chức năng bằng cách truy xuất trực tiếp vào các đối tượng và chức năng đã được công bố của Automation server. Công bố các đối tượng như vậy sẽ rất có lợi khi một ứng dụng muốn cung cấp các chức năng của nó cho ứng dụng khác. Chẳng hạn như một ứng dụng xử lý văn bản có thể cung cấp chức năng bắt lỗi chính tả cho các ứng dụng khác sử dụng. Với cơ chế này, các lập trình viên, các nhà phát triển phần mềm dễ dàng xây dựng những ứng dụng mới dựa trên những chức năng được cung cấp sẵn bởi các Automation server.

.Phân tích thiết kế hệ thống Trang

Automation thể hiện rõ khía cạnh kỹ thuật trong lập trình hướng đối tượng ở mức ứng dụng như: tính dùng lại (reusability), tính đóng gói (encapsulation). Rất nhiều ứng dụng thương mai, chẳng hạn như Microsoft Office (bao gốm toàn bộ các sản phẩm như Word, Excel, Power Point, Access,…) hay Microsoft Visual C++, cho phép điều khiển tự động hóa nhiều chức năng của chúng. Thí dụ, ta có thể sử dụng macro VBScrip để điều khiển tự động hóa việc build chỉnh sửa code hay debug…

Automation với Microsoft Office Word 2003:

Các đối tượng Microsoft Office Word 2003 được sắp xếp theo thứ tự phân cấp, và 2 lớp chính ở vị trí cao nhất trong cây phân cấp là lớp Application (lớp ứng dụng) và lớp Document (tài liệu). Hai lớp này rất quan trọng bởi vì hầu hết mọi thao tác khi xử lý thì lúc nào chúng ta cũng xử lý trên ứng dụng Word hay xử lý trên các tài liệu Word.

Đối tượng Application đại diện cho toàn bộ ứng dụng, mỗi đối tượng Document đại diện cho một tài liệu Word đang được xử lý, đối tượng Paragraph tương ứng với mỗi đoạn trong tài liệu và các lớp khác cũng đại diện cho các thành phần tương ứng trong tài liệu Word. Mỗi đối tượng này đều có các phương thức và thuộc tính cho phép thao tác và giao tiếp với chúng.

Mô hình các đối tượng chính của Word:

.Phân tích thiết kế hệ thống Trang

Hình 58.Mô hình các đối tượng chính của Word

 Appplication: đại diện cho ứng dụng Word, là cha của tất cả mọi loại đối tượng. Ta có thể sử dụng hàm và các thuộc tính của nó để điều khiển chương trình Word.

 Document: là đối tượng chính của việc lập trình với Word. Khi mở hay tạo mới một tài liệu Word thì đối tượng Document cũng được tạo tương ứng và thêm vào tập hợp Documents trong Word. Tài liệu đang được mở được gọi là tài liệu hiện hành và được truy xuất thông qua thuộc tính ActiveDocument của đối tượng Application.

 Selection: đại diện cho một vùng dữ liệu đang được chọn. Khi thực hiện các thao tác soạn thảo trên Word, chẳng hạn như tô đậm văn bản, ta chọn hay hay đánh dấu đoạn văn bản và áp dụng định dạng. Đối tượng Selection luôn tồn tại trong tài liệu. Nếu không có gì được chọn thì nó đại diện cho vị trí của con trỏ hiện tại.

.Phân tích thiết kế hệ thống Trang

 Range: đại diện cho các vùng kề nhau trong tài liệu, được xác định bằng vị trí ký tự đầu tiên và vị trí ký tự kết thúc. Ta có thể có nhiếu đối tượng Range trong cùng một tài liệu. Đối tượng Range có các đặc điểm sau:

 Nó có thể chỉ là vị trí con trỏ hiện tại, hay là một phạm vi văn bản, hay là toàn bộ văn bản.

 Nó bao gồm các ký tự không được hiển thị như khoảng cách, tab, ký tự đánh dấu paragraph.

 Nó có thể là vùng văn bản đang dược chọn, hay có thể là vùng văn bản khác với vùng văn bản đang được chọn.

 Không được lưu trữ với tài liệu và chỉ tồn tại khi chạy mã lập trình.

 Bookmark: đối tượng Bookmark tương tự như đối tượng Range ở chỗ nó đại diện cho một vùng dữ liệu kề nhau với vị trí đầu và vị trí cuối. Ta sử dụng Bookmark để đánh dấu một vị trí trong tài liệu, hay như là một đối tượng chứa văn bản trong tài liệu. Bookmark có thể chỉ là vị trí con trỏ hiện tại hoặc là toàn bộ tài liệu. Bạn có thể có nhiều Bookmark trong một tài liệu. Bookmark có những đặc điểm sau làm cho nó khác với đối tượng Range: (adsbygoogle = window.adsbygoogle || []).push({});

 Ta có thể đặt tên cho Bookmark.

 Bookmark được lưu trữ với tài liệu, vì thế nó không mất đi ngay cả khi không chạy mã lập trình hoặc đã đóng tài liệu.

 Mặc định, Bookmark được ẩn, nhưng có thể làm cho hiển thị bằng cách thiết lập thuộc tính ShowBookmarks của đối tượng View thành giá trị true(đối tượng View là thành viên của đối tượng Application và Document).

.Phân tích thiết kế hệ thống Trang

Cài đặt và thử nghiệm

Component diagram:

Lược đồ biểu diễn các module của ứng dụng đã được cài đặt và sự phụ thuộc giữa các module này:

Hình 59.Sơ đồ các module chứa các lớp của hệ thống

Tên gói Bao gồm các lớp

Quan ly cau hoi AppInstaller, frmMain, frmSetup, Program

Sys.User.Control frmAuthor, frmEquation, frmInformation, ProgressServices, ucBoMon, ucChangePass, ucChuong, ucGiaoVien, ucImportCauHoi, ucKhoa,ucLogin, ucMain, ucMonHoc, ucMultimedia, ucNhomQuyen, ucPhanQuyen, ucPhuTrach, ucProgressImport, ucProgress, ucSoanCauHoi, ucTaoDeThi. ucTaoTaiKhoan, ucXemDeThi.

Sys.App.Utility CatchError, Equation, Regedit, Util. Sys.App.Word.Process DefaultPage, Page.

.Phân tích thiết kế hệ thống Trang

Sys.App.Word ImportData.

Sys.App.BLL BBLAuthenticationForm, BBLBoMon, BBLCauHoi, BBLChiTietDeThi, BBLChuong, BBLDe, BBLDeThi, BBLGiaoVien, BBLImport, BBLKhoa, BBLLogin, BBLMonHoc, BBLMultimedia, BBLNhomQuyen, BBLPhuTrach, BBLTaiKhoan, BBLTraLoi, BLTaoDe, Login.

Sys.App.DLL DataLayer, DDLAuthenticationForm, DDLBoMon, DDLCauHoi, DDLChiTietDeThi, DDLChuong, DDL, DDLDe, DDLDeThi, DDLGiaoVien, DDLImport, DDLKhoa, DDLLogin, DDLMonHoc, DDLMultimedia, DDLNhomQuyen, DDLPhuTrach, DDLTaiKhoan, DDLTraLoi, DLObject, XmlReader.

Sys.App.Decorator RendererTable, RendererPanel, Office2007ColorTable, Office2007Helpers, Office2007Renderer

Sys.Data.Entity AuthenticationForm, BoMon, CauHoi, ChiTietDeThi, Chuong, DeThi, GiaoVien, Khoa, KhoaGiaoVien, GiaVienMonHoc, MonHoc, Multimedia, NhomQuyen, PhuTrach, TaiKhoan, TraLoi.

auservice ProjectInstaller, Program, Service, Updater.

notify frmNotify, Program

Bảng 66.Thông tin các module của hệ thống

Một phần của tài liệu Xây dựng hệ thống quản lý ngân hàng câu hỏi trắc nghiệm (Trang 89 - 95)