没有 BalloonHint1 的示例按设计工作。提示刷新没有问题。
procedure TForm1.ControlList1MouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
ControlList1.ShowHint:=false;
//ControlList1.CustomHint <-------value is not set as it is not required.
ControlList1.Hint := IntToStr(ControlList1.HotItemIndex);
ControlList1.ShowHint:=true;
end;
当我添加 TBalloonHint 时,BalloonHint 无法正确显示。
procedure TForm1.ControlList1MouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
begin
ControlList1.ShowHint:=false;
BalloonHint1.Delay:=0;
BalloonHint1.HideAfter:=-1;
ControlList1.CustomHint:=BalloonHint1;
ControlList1.Hint := IntToStr(ControlList1.HotItemIndex);
ControlList1.ShowHint:=true;
end;
当我第一次将鼠标移到 ControlList 上时。BalloonHint 不显示。
如果我再次将鼠标移到上方(第二次),则上一次移动的 HotItemIndex 会显示索引。
有没有办法做一个 BalloonHint1.Refresh?我已经测试了以下一些:
Application.CancelHint; ///something that I dont want to do... but i gave it a try
还
ControlList1.ShowHint:=false;
ControlList1.ShowHint:=true;