Когда приложение отображает подсказку, он создает экземпляр HintWindowClass, чтобы представить окно используется для отображения подсказки.
Приложения могут настраивать это окно, создавая потомок THintWindow и присвоение его Переменной HintWindowClass при запуске приложения.
Code: |
{ }
type TMyHintWindow = class(THintWindow) constructor Create(AOwner: TComponent); override; end;
implementation
{....}
constructor TMyHintWindow.Create(AOwner: TComponent); begin inherited Create(AOwner); with Canvas.Font do begin Name := 'Arial'; Size := Size + 5; Style := [fsBold]; end; end;
procedure TForm2.FormCreate(Sender: TObject); begin HintWindowClass := TMyHintWindow; Application.ShowHint := False; Application.ShowHint := True; end; |
В примере перехватывается событие Application.OnShowHint и изменяется шрифт Hint'а.
Code: |
type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private {Private declarations} public procedure MyShowHint(var HintStr: string; var CanShow: Boolean;var HintInfo: THintInfo); {Public declarations} end;
var Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.MyShowHint(var HintStr: string; var CanShow: Boolean; var HintInfo: THintInfo); var i: integer; begin for i := 0 to Application.ComponentCount - 1 do if Application.Components[i] is THintWindow then with THintWindow(Application.Components[i]).Canvas do begin Font.name := 'Arial'; Font.Size := 18; Font.Style := [fsBold]; HintInfo.HintColor := clWhite; end; end;
procedure TForm1.FormCreate(Sender: TObject); begin Application.OnShowHint := MyShowHint; end;
|
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!