这是我第一次使用BalloonHints.我正在使用Delphi 2010.
我不确定我是否正确使用提示,因为在下面的场景中,我得到了两次相同文本的提示:一次作为标题,一次作为正文.我已经挣扎了一段时间,这里也提到了其他帖子,Delphi的帮助,以及Cantu在D2009手册中的例子.
如果检测到用户需要单击按钮,我希望我的代码弹出一个提示.然后我想要显示相同的提示,如果用户稍后将鼠标悬停在按钮上.
按照以下顺序,在步骤3中,按钮的提示文本显示为气球文本上的标题,就好像有一个管道符...
第1步:调用ShowHint.提示正确显示,然后正常消失.
第2步:用户将鼠标移到按钮上.按钮的提示正确显示.
第3步:再次调用ShowHint.出现的提示具有来自气球提示的描述中的正确文本,但它具有来自按钮的标题.
Procedure TForm.ShowHintIfNeeded.
var
Pt: TPoint;
begin
if fNeedFileName then
begin
BalloonHint1.Description := 'Click this button to open';
Pt.X := btnOpenFile.Width Div 2;
Pt.Y := 0;
BalloonHint1.ShowHint(btnOpenFile.ClientToScreen(Pt));
end;
end;
Run Code Online (Sandbox Code Playgroud)
和我的按钮的dfm:
object btnOpenFile: TBitBtn
Hint = 'Click this button to open'
CustomHint = BalloonHint1
ShowHint = True
end
Run Code Online (Sandbox Code Playgroud)
如果您明确将BaloonHint1.Title设置为空,例如:
Procedure TForm.ShowHintIfNeeded.
var
Pt: TPoint;
begin
if fNeedFileName then
begin
BalloonHint1.Title := '';
BalloonHint1.Description := 'Click this button to open';
Pt.X := btnOpenFile.Width Div 2;
Pt.Y := 0;
BalloonHint1.ShowHint(btnOpenFile.ClientToScreen(Pt));
end;
end;
Run Code Online (Sandbox Code Playgroud)
这是否仍然将标题显示为按钮中的文本?
| 归档时间: |
|
| 查看次数: |
11043 次 |
| 最近记录: |