程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 第十一章-Delphi應用程序的應用(二)(2)

第十一章-Delphi應用程序的應用(二)(2)

編輯:Delphi

TApplication部件的OnHelp事件響應幫助事件。 當應用程序接收到一個所需的幫助

時,發生OnHelp事件。使用OnHelp事件可以在需要幫助時定義一些特殊過程。 以下的例子改變了應用程序的幫助文件,AppHelp函數用來處理OnCreate事件。 

function TForm1.AppHelp(Command.Word;Data : lontint) : Boolean

begin

if OpenDialog1.Exeeute then

Application HelpFile := OpenDialog1.FileName;

end; 

11.2.2 通用對話框中使用幫助系統 

Delphi通用對話框中都能顯示一個幫助按鈕。如果程序顯示了對話框中的幫助按鈕,應該確保應用程序的幫助文件中有相應的主題。

在通用對話框中使用幫助系統,要做到以下三點:

 1. 把對話框的Option|SHOWHelp屬性設置成true,這樣在程序運行時將出現幫助按鈕。 ShowHelp 屬性與其部件的名字相關, 例如字體對話框的 ShowHelp 屬性稱為fdShowHelp。

  2. 為對話框部件定義幫助文件。

3. 定義應用程序的文件名。  

11.3 Delphi幫助提示(Hint)的應用 

使用Delphi集成開發環境時,用戶常把鼠標置於程序部件上,如加速按鈕,對齊按鈕等。鼠標在部件上停留超過一定時間後,Delphi將會顯示一個彈出窗口, 裡面有部件名稱和概述。

這就是Delphi的幫助提示。Delphi的應用程序可通過定義ShowHint 屬性實現幫助提示。 

11.3.1 幫助提示的顯示 

ShowHint屬性可應用於所有的控件和應用程序部件,控件的ShowHint 屬性含義與程序的稍有不同。控件的ShowHint屬性決定某一控件是否顯示幫助提示,如果ShowHint 是真值,當用戶把鼠標置於控件之上超過一定時間後,控件將出現幫助提示。如果是假值,則不出現提示。控件是否顯示還決定於控件的ParentShowHind屬性。如果 ParentShowHint是真值,控件的父類的ShowHint屬性將決定控件是否顯示幫助提示。 假如有一個分組框和一個檢查框,分組框是檢查框的父件。表11.3說明了子件與父件的 ShowHint,ParentShowHint屬性設置對子件幫助提示的影響。 

表11.3 Hint屬性設置對幫助提示的影響

 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

分組框ShowHint 檢查框ParentShowHint 檢查框ShowHint 幫助提示

─────────────────────────────────────

T或F F T 顯示

  T T F 顯示

 F T T 不顯示

T或F         F F 不顯示

 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

        T表示真值,F表示假值 

把控件的ShowHint屬性設置成真值,系統自動將ParentShowHint設置成假值。應用程序部件的ShowHint屬性可以決定整個程序的幫助提示是否有效。如果應用程序的ShowHint 屬性為真,程序中各部件的幫助提示才有效, 但是否顯示還要取決於部件的SHowHint, ParentShowHint及其父件的ShowHint屬性,如果應用程序的ShowHint屬性為假值,無論程序部件的屬性如何設置,程序中所有幫助提示都無效。

Hint屬性是顯示在幫助提示框中的文本字符。Hint屬性應用於所有控件,包括應用程序部件菜單部件。因為應用程序部件不是可視部件,因此不能在Object Inspector 窗口中定義Hint屬性。但可以在定義部件的Hint屬性時同時定義應用程序部件的Hint 屬性,定義時只需用“|"字符會分開,例如: 

Edit.Hint := 'Name |Enter Name in the edit box' 

等價於

Edit.Hint := Name;

Application.Hint := Enter Name in the edit box 

應用程序的Hint屬性可用在OnHint事件。

如果只定義了一個值,Delphi把這個值同時賦給部件和應用程序部件的Hint屬性。 如果應用程序的ShowHint屬性為假值,所有的幫助提示將不顯示, 但可以利用程序部件的Hint屬性顯示其它提示,如狀態條等。

當某一部件的SHowHint屬性為真, 但又沒有定義Hint 屬性, 如果此時文件定義了Hint屬性,則此部件將使用文件的Hint值。 

11.3.2 OnHint事件 

當用戶把鼠標放在某一部件,而該部件的Hint 值不為空值,此時發生OnHint事件。利用OnHint事件可以執行一些特殊的操作。

最常用是利用OnHint事件顯示狀態條的標題,狀態條是用面板來實現的。下面舉例說明。

這個例子使用了面板部件,菜單,一個編輯框。菜單可隨意設計, 但需記住每個菜單項的Hint 值。 另外, 定義編輯框的Hint 值, 把面板置於窗體底部( 將Align 屬性置於dBotton)把面板標題置於左端(將Alignment屬性置於taleftJustify)。

OnHint 事件是應用程序部件的事件,而應用程序部件是非可視部件,不能使用Object Inspector窗體定義事件,必須編寫自己的OnHint事件。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved