3. 提供有關(guān)屬性和事件的幫助
當(dāng)在窗體中選擇一個部件或在Object Inspector中選擇事件或?qū)傩詴r,能夠按F1得到有關(guān)這一項(xiàng)的幫助。如果創(chuàng)建了相應(yīng)的Help文件的話,自定義部件的用戶能得到有關(guān)你的部件的相應(yīng)的文檔。
因?yàn)镈elph使用了特殊的Help引擎支持跨多個Help文件處理主題搜索,所以你能提供關(guān)于自定義部件的小的Help文件,用戶不需要額外的步驟就能找到你的文檔。你的Help成了Delphi Help系統(tǒng)的一部分。
要給用戶提供幫助,要理解下列兩方面:
● Delphi怎樣處理HELP請求
● 將HELP插入Delphi
�、� Delphi怎樣處理HELP請求
Delphi基于關(guān)鍵詞查詢HELP請求。就是說,當(dāng)用戶在窗體設(shè)計窗口的已選部件上按F1鍵時,Delpdi將部件的名字轉(zhuǎn)換成一個關(guān)鍵詞,然后調(diào)用Windows Help引擎查找那個關(guān)鍵詞的幫助主題。關(guān)鍵詞是Windows Help系統(tǒng)的標(biāo)準(zhǔn)部分。實(shí)際上 ,WinHelp使用Help中的關(guān)鍵詞產(chǎn)生Search對話框中的列表。因?yàn)橛糜谏舷挛拿舾兴阉髦械年P(guān)鍵詞不是實(shí)際供用戶讀的,所以要輸入關(guān)鍵詞的替代詞。
例如,一個查找名為TSomething的部件的詳細(xì)信息的用戶可能打開WinHelp的Search對話框并輸入TSomething。但不會使用用于窗體設(shè)計窗口的上下文查找的替代形式class-TSomething。因此,這個特殊的關(guān)鍵詞Class-TSomething對用戶是不可見的,以免弄亂了搜索列表。
�、� 將Help插入Delphi
Delphi提供了創(chuàng)建和插入Windows Help文件的工具,包括Windows Help編譯器HC.EXE。為自定義部件建立Help文件的機(jī)制與建立任何Help文件沒什么不同,但需要遵循一些約定以與庫中其它Help兼容。
保持兼容性的方法如下:
● 建立Help文件
● 增加特殊的注腳
● 建立關(guān)鍵詞文件
● 插入Help索引
當(dāng)你為自定義部件建立完Help,有下列幾個文件:
● 編譯過的Help(.HLP)文件
● Help關(guān)鍵詞(.KWF)文件
● 一個或多個Help源文件(.RTF)
● Help工程文件(.HLJ)
編譯過的Help文件和關(guān)鍵詞文件應(yīng)當(dāng)與庫單元在同一目錄。
�、� 建立Help文件
你可以使用任何的工具創(chuàng)建Windows Help文件。Delphi的多文件搜索引擎,可以包含任何數(shù)目的Help文件的要素。在編譯的Help文件之外,你應(yīng)當(dāng)擁有RTF源文件,這樣才能生成關(guān)鍵詞文件。
為使自定義部件的Help同庫中其它部件一起工作,要遵循下列約定:
● 每個部件有占一頁的幫助
部件幫助頁應(yīng)當(dāng)給出部件目的的簡單描述,然后列出最終用戶可用的屬性、事件和方法的描述。應(yīng)用開發(fā)者通過在窗體上選擇部件并按F1訪問這一頁。
部件幫助頁應(yīng)當(dāng)有一個用于關(guān)鍵詞搜索的“K”腳注,腳注中包含部件名。例如,TMemo的關(guān)鍵詞腳注讀作 "TMemo Component"
● 部件增加和修改的每一個屬性,事件和方法應(yīng)當(dāng)有一頁幫助
屬性、事件或方法的幫助頁應(yīng)當(dāng)指出該項(xiàng)用于哪個部件,顯示聲明語法和描述它的使用方法。
屬性、事件或方法的幫助頁應(yīng)當(dāng)有一個用于關(guān)鍵詞搜索的“K”腳注,該腳注中包含該項(xiàng)的名字和種類。例如,屬性Top的關(guān)鍵詞腳注為“Top property”。
Help文件的每一頁也需要用于多文件索引搜索的特殊腳注。
�、� 增加特殊腳注
Delphi需要特殊的搜索關(guān)鍵詞以區(qū)別用于部件的幫助頁和其它項(xiàng)目。你應(yīng)當(dāng)為每一項(xiàng)提供標(biāo)準(zhǔn)的關(guān)鍵詞搜索項(xiàng)。但你也需要用于Delphi的特殊腳注。
要為來自O(shè)bject Inspector窗口或代碼編輯器F1的搜索增加關(guān)鍵詞,就得為Help文件幫助頁增加 "B"腳注。
“B”腳注與用于標(biāo)準(zhǔn)WinHelp關(guān)鍵詞搜索的“K”腳注很相象,但它們只用于Delphi搜索引擎。下表列出怎樣為每種部件幫助頁建立“B”腳注:
表19.7 部件幫助頁搜索注腳
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
幫助頁類型 "B"腳注內(nèi)容 示 例
──────────────────────────────────
主部件頁 'class_'+部件類型名 class_TMemd
一般屬性或事件頁 'prop_'+屬性名 prop_WordWrap
'event_'+事件名 event_OnChange
部件特有的屬性 'prop_'+部件類型名 prop_TMemoWordWrap
或事件頁 +屬性名
'event_'+部件類型名 event_TMemoOnChange
+事件名
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
區(qū)別一般幫助頁和部件特有的幫助頁是很重要的。一般幫助頁應(yīng)用于所有部件上的特定屬性和事件。例如Left屬性是所有部件中的標(biāo)識。因此,它用字符串Prop-Left進(jìn)行搜索。而Borde-style依賴于所屬的部件,因此,BorderStyle屬性擁有自己的幫助頁。例如,TEdit有BorderStyle屬性的幫助頁,搜索字符串為Prop_TEditBorderStyle。
�、� 建立關(guān)鍵詞文件
建立和編譯了Help文件,并且增加了腳注之后,還要生成獨(dú)立的關(guān)鍵詞文件,這樣Delphi才能將它們插入主題搜索的索引。
從Help資源文件RTF創(chuàng)建關(guān)鍵詞文件的方法如下:
● 在DOS提示行下,進(jìn)入包含RTF文件的目錄
● 運(yùn)行關(guān)鍵詞文件產(chǎn)生程序——KWGEN.EXE,后跟Help工程文件,如KWGEN SPECIAL.HPJ。當(dāng)KWGEN運(yùn)行完畢后,就有了與Help工程文件相同的關(guān)鍵詞文件,但以.KWF為擴(kuò)展名
● 將關(guān)鍵詞文件放在編譯完的庫單元和Help文件相同的目錄
當(dāng)你在Component Palette上安裝部件時,希望關(guān)鍵詞插入Delphi Help系統(tǒng)的搜索索引。
�、� 插入Help索引
以自定義部件建立關(guān)鍵詞文件后,要將關(guān)鍵詞插入Delphi的Help索引。
將關(guān)鍵詞文件插入Detphi Help索引的方法如下:
● 將關(guān)鍵詞文件放在與編譯完的庫單元和Heph文件相同的目錄中
● 運(yùn)行HELPINST程序
HELPINST運(yùn)行完后,Delphi的Help索引文件(.HDX)包含自定義部件幫助頁的關(guān)鍵詞。
相關(guān)推薦:2010年9月計算機(jī)等級考試試題及答案解析專題北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |