DELPHI基础教程:Delphi应用程序的应用(二)[3]

 我来答
新科技17
2022-10-19 · TA获得超过5898个赞
知道小有建树答主
回答量:355
采纳率:100%
帮助的人:74.6万
展开全部

  把控件的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值

   OnHint事件

  当用户把鼠标放在某一部件 而该部件的Hint 值不为空值 此时发生OnHint事件 利用OnHint事件可以执行一些特殊的操作

  最常用是利用OnHint事件显示状态条的标题 状态条是用面板来实现的 下面举例说明

  这个例子使用了面板部件 菜单 一个编辑框 菜单可随意设计 但需记住每个菜单项的Hint 值 另外 定义编辑框的Hint 值 把面板置于窗体底部( 将Align 属性置于dBotton)把面板标题置于左端(将Alignment属性置于taleftJustify)

  OnHint 事件是应用程序部件的事件 而应用程序部件是非可视部件 不能使用Object Inspector窗体定义事件 必须编写自己的OnHint事件

  首先 在TForm 对象中宣称DisplayHint方法 并在单元的implementation部分编写实现代码 在DisplayHint方法中 把应用程序的Hint属性赋给面板的标题 另一个重要问题是必须把DisplayHint方法作为处理OnHint事件的方法 窗体的OnCreate事件的代码解决了这个问题

  下面列出了程序的完整代码 当用户运行程序 把鼠标置于菜单或部件之上 在窗体的状态条中将出现定义的提示

  Type

  TForm = class(TForm)

  Button : TButton;

  Panel : TPanel;

  Edit : TEdit;

  procedure FormCreate(Sender: TObject)

  private

  { Private declarations }

  public

  procedure DisplayHint(Sender: TObject)

  end;

  var

  Form : TForm ;

  implementation

  {$R * FRM}

  procedure TForm DisplayHint(Sender: TObject)

  begin

  Panel Caption := Application Hint;

  end;

  procedure TForm FormCreate(Sender: TObject)

  begin

  Application OnHint := DisplayHint;

  end;

   自定义部件的帮助安装

  Delphi有一个功能强大的帮助搜询引擎 叫做多层帮助 能为自定义的部件提供 上下文敏感 帮助 多层帮助允许把自定义部件的多个帮助文件安装成Delphi 的帮助序列 以提供给用户一种内层访问帮助文件的方式 用户有三种方法访问帮助文件

lishixinzhi/Article/program/Delphi/201311/25196

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式