首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

Delphi 說明系統深度應用:OnHelp 事件、通用對話框整合與 Hint 提示機制全解析

     編輯:Delphi

TApplication.OnHelp 事件與動態切換說明檔

TApplication.OnHelp 事件於應用程式接收說明需求時觸發,可定義特殊處理流程。範例展示透過 OpenDialog 讓使用者選擇說明檔,動態設定 Application.HelpFile:

function TForm1.AppHelp(Command: Word; Data: Longint): Boolean;
begin
  if OpenDialog1.Execute then
    Application.HelpFile := OpenDialog1.FileName;
  Result := True;
end;

通用對話框整合說明系統的三要素

Delphi 通用對話框均可顯示說明按鈕,需完成:

  1. 將對話框 Options 中的 ShowHelp 屬性設為 True(如字型對話框的 fdShowHelp);
  2. 為對話框元件指定說明檔;
  3. 定義應用程式的說明檔名稱。

Delphi Hint 提示系統完整機制

1. ShowHint 與 ParentShowHint 交互邏輯

所有控制項與應用程式元件均具 ShowHint 屬性。控制項 ShowHint 決定是否顯示提示,但受 ParentShowHint 影響:若 ParentShowHint=True,則由父元件的 ShowHint 決定。設定控制項 ShowHint=True 會自動將 ParentShowHint 設為 False。應用程式元件的 ShowHint 為總開關,若為 False,所有提示失效。

2. Hint 屬性的雙重用途與分隔符

Hint 屬性適用於所有控制項、應用程式元件、選單元件。因應用程式元件不可視,無法在物件檢視器設定,但可用 | 分隔符同時設定控制項與應用程式提示:

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

等同於:

Edit1.Hint := 'Name';
Application.Hint := 'Enter Name in the edit box';

若僅設單一值,Delphi 同時指派給控制項與應用程式。應用程式 Hint 可用於 OnHint 事件。若應用程式 ShowHint=False,提示不顯示,但仍可利用控制項 Hint 於狀態列等處顯示。

3. OnHint 事件與狀態列實作

當滑鼠停留於 Hint 非空的控制項上觸發 OnHint 事件。常見用法:於應用程式 OnHint 中將 Application.Hint 顯示於狀態列(以 TPanel 實作,Align=alBottom、Alignment=taLeftJustify)。因應用程式元件不可視,OnHint 必須以程式碼指定,無法透過物件檢視器設定。

範例架構:面板元件、選單(各項目設 Hint)、編輯框(設 Hint)。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved