24/05/2018, 19:55

Thêm trợ giúp vào ứng dụng

Thêm hỗ trợ cho Help vào ứng dụng VB gần như khá đơn giản. Tất cả những gì ta cần làm là chỉ ra một thuộc tính, HelpFile (và dĩ nhiên, viết và biên dịch tập tin Hel p ) để hiển thị Help khi người sử dụng nhấn phím F1 hay yêu cầu Help ...

Thêm hỗ trợ cho Help vào ứng dụng VB gần như khá đơn giản. Tất cả những gì ta cần làm là chỉ ra một thuộc tính, HelpFile(và dĩ nhiên, viết và biên dịch tậptinHelp) để hiển thị Helpkhi người sử dụng nhấn phím F1hay yêu cầu Helptừ Menu. Một thuộc tính khác là HelpContextID, dùng để cung cấp chủ đề Helptheo ngữ cảnh cho bất kỳ giao diện người sử dụng nào trong chương trình. Quá trình gắn thêm Help là như nhau trong cả WinHelp HTMLHelp.

Thuộc tính HelpFile

Thuộc tính HelpFilecủa đối tượng Appđược dùng để chỉ ra tên của tập tin Helpcho ứng dụng. Nó đòi hỏi một tập tin hợp lệ của WinHelp (.hlp) hoặc là HTMLHelp (.chm). Nếu tập tin không tồn tại, lỗi sẽ xảy ra.

Chỉ ra thuộc tính HelpFile

1. Chọn Project Propertiestừ menu Projectđể mở hộp thoại Project Properties.

2. Trong trường HelpFileNamecủa tab General, gõ vào đường dẫn và tên của tập tin Help của ứng dụng (.hlphay.chm).

Ta còn có thể chỉ ra HelpFilebằng cách lập trình. Đoạn chương trình sau đây chỉ ra một tập tin HTMLHelpchứa trong cùng thư mục với tập tin thi hành của ứng dụng:

Private Sub Form_Load()

App.HelpFile
=
App
.
Path
&“foo.c
h
m” 

End Sub

Đối tượng ErrObjectcũng có thuộc tính HelpFile, cho phép ta chỉ ra một tập tin Help khác cho các thông báo lỗi. Ví dụ, nếu ta có một vài ứng dụng sử dụng chung các thông báo lỗi, ta có thể đặt Helpcho các thông báo lỗi trong một tập tin Helpduy nhất và gọi nó bằng thuộc tính Err.HelpFile trong mỗi ứng dụng.

Thuộc tính HelpContextID

Thuộc tính HelpContextIDđược dùng để liên kết một phần giao diện người sử dụng (như là điều khiển, biểu mẫu hay menu) với một chủ đề liên quan trong tập tin Help. Thuộc tính HelpContextIDphải có kiểu là một số Long tương ứng với ContextID của một chủ đề trong tập tin WinHelp(.hlp) hay HTMLHelp (.chm).

Ví dụ, ta có thể nhập 10000 vào thuộc tính HelpContextID của hộp văn bản. Khi người sử dụng chọn hộp văn bản và nhấn F1, VB tìm kiếm chủ đề có ContextID là 10000 trong tập tin Helpđược chỉ ra thuộc tính HelpFilecủa ứng dụng. Nếu nó tìm thấy, một cửa sổ Helpsẽ được mở và hiển thị chủ đề; nếu không, lỗi sẽ xuất hiện và chủ đề mặc định của tập tin Help sẽ được hiển thị.

Ta nên sử dụng HelpContextID duy nhất cho mỗi chủ đề Help trong tập tin Help. Trong một số trường hợp, nếu muốn, ta có thể gán cùng HelpContextIDcho một đối tượng nếu như chúng sử dụng chung một chủ đề Help.

Ta không nhất thiết phải nhập một HelpContextIDcho mỗi điều khiển trên biểu mẫu. Nếu người sử dụng nhấn F1trên điều khiển với HelpContextID0 (giá trị mặc định), VB sẽ tìm kiếm một HelpContextIDhợp lệ cho nơi chứa của điều khiển.

Gán HelpContextID cho một điều khiển hay biểu m ẫu.

1. Chọn một điều khiển hay biểu mẫu mà ta muốn nhập vào HelpContextID.

2. Nhấn đúp HelpContextIDtrong cửa sổ Propertiesvà gõ vào giá trị Long hợp lệ.

Theo dõi giá trị mà ta nhập vào sao cho ta có thể dùng cùng giá trị đó cho ContextID của chủ đề Helptương ứng.

Chú ý: Đối với điều khiển CommonDialogvà có lẽ đối với một số điều khiển khác, tên của thuộc tính này là HelpContext thay vì HelpContextID.

Gán HelpContextID cho menu

1. Chọn Menu Editor từ menu Tools.

2. Chọn mục menu mà ta muốn nhập vào một HelpContextID.

3. Nhập vào một giá trị Long hợp lệ trong hộp Select the HelpContextID.

Theo dõi giá trị mà ta nhập vào sao cho ta có thể dùng cùng giá trị đó cho ContextID của chủ đề Helptương hợp.

HelpContextIDcòn có thể được nhập vào bằng cách lập trình:

Private Sub Form_Load()

Command1.HelpContextID = 12345

MenuHelp.HelpContextID = 23456

Err.HelpContext = 34567

End
Sub

VB cho phép ta thêm WhatsThisHelp vào các ứng dụng một cách dễ dàng. Whats ThisHelp cung cấp phần truy cập nhanh đến văn bản Help trong một cửa sổ bật ra mà không cần phải mở HelpViewer. WhatsThisHelp chủ yếu được sử dụng để cung cấp

trợ giúp đơn giản cho các phần giao diện người sử dụng như là các trường dữ liệu nhập. VB hỗ trợ các chủ đề Whats This Help trong các tập tin WinHelp (.hlp) và HTMLHelp.

Việc gán giá trị True cho thuộc tính WhatsThisHelp của biểu mẫu làm cho Whats ThisHelp hoạt động được. Khi đó, phần Help theo ngữ cảnh cho biểu mẫu sẽ bị vô hiệu hoá.

Kích hoạt What’s This Help cho biểu mẫu

1. Với biểu mẫu đã được chọn, nhấn đúp lên thuộc tính WhatsThisHelp trong cửa sổ Properties để định giá trị cho nó là True.

2. Cài đặt các thuộc tính sau đây để thêm một nút WhatsThis vào thanh tiêu đề của biểu mu:

Thuộc tính Cài đặt
BorderStyle 1-Fixed Singlehay 2-Sizable
MaxButton FALSE
MinButton FALSE
Wh a tsThisButton TRUE

3. Chọn một điều khiển mà ta muốn cung cấp WhatsThisHelp và gán một giá trị duy nhất cho thuộc tính WhatsThisHelpID của điều khiển.

Theo dõi giá tị mà ta nhập vào sao cho ta có thể dùng cùng giá trị đó cho ContextID của chủ đề Helptương ứng.Ta cũng có thể cho phép WhatsThisHelpmà không dùng nút WhatsThisbằng cách chỉ ra thuộc tính WhatsThisHelp của biểu mẫu là True và gọi phương thức WhatThisMode của biểu mẫu hay phương thức ShowWhatThiscủa điều khiển.

Bước cuối cùng trong việc thêm Helpvào ứng dụng là chắc chắn rằng nó sẽ đến tay người sử dụng. Các yêu cầu cho việc cung cấp Helpcùng với ứng dụng có hơi khác giữa WinHelp và HTMLHelp.

Cung cấp WinHelp

Bởi vì mọi hệ thống Windows đều có cài đặt sẵn Trình xem Trợ giúp của Windows (WindowsHelpViewer), ta chỉ còn phải cung cấp tập tin Help (.hlp). Trình đóng gói Triển khai (PackageandDeploymentWizard) tự động thêm các phần phụ thuộc cho tập tin Helpđược tham chiếu bởi ứng dụng. Nếu ta tạo ra phần cài đặt bằng các công cụ khác, ta phải bảo đảm rằng tập tin.hlpđược đưa vào và được cài đặt vào đúng vị trí (thường là trong cùng thu mục với ứng dụng hoặc là thư mục WindowsHelp).

Cung cấp HTML Help

HTMLHelp là một kỹ thuật tương đối mới, do đó, ta không thể giả định rằng mọi người sử dụng đề có những tập tin cần thiết để xem HTML Help. Trình đóng gói Triển khai(PackageandDeploymentWizard) sẽ thêm các phần liên quan đối với tập

tin HTMLHelp(.chm)được tham chiếu bởi ứng dụng; nhưng nó không thêm tất cả các phần liên quan đến tập tin HTMLHelp Viewer. Ta cần phải sửa lại phần cài đặt để đưa các tập tin này vào. Tra cứu các tài liệu cho công cụ HTMLHelpđể hiểu thêm về các tập tin nào được yêu cầu trong một tình huống cho trước.

0