Главная страницаОбратная связьКарта сайта

Как поместить иконку в окошко подсказки

Чтобы увидеть это в действии, всё, что надо сделать, это поместить этот юнит в список USES Вашего приложения


unit HintX;

interface

uses
  Windows, Messages, Controls;

type
  TIconHintX = class(THintWindow)
  protected
    procedure Paint; override;
  public
    function CalcHintRect(MaxWidth: Integer; const AHint: string;
    AData: Pointer): TRect; override;
end;

implementation

uses Forms;

{ TIconHintX }

{-Вычисляем новый размер окошка подсказки
для помещения в него иконки:-}
function TIconHintX.CalcHintRect(MaxWidth: Integer;
const AHint: string; AData: Pointer): TRect;
begin
  Result := inherited CalcHintRect(MaxWidth, AHint, AData);
  Result.Right := (Length(AHint) * 5) + Application.Icon.Width;
  Result.Bottom := (Application.Icon.Height) * 2;
end;

procedure TIconHintX.Paint;
const
  MARGIN = 5;
begin
  inherited;
  Canvas.Draw(MARGIN, MARGIN * 5, Application.Icon);
  //рисуем рамку окошка подсказки
  SendMessage(Handle, WM_NCPAINT, 0, 0);
end;

initialization
  //связываем наш новый класс с классом окошка
  //подсказки установленным поумолчанию:
  HintWindowClass := TIconHintX;

end.


Обсудить статью на форуме


Если Вас заинтересовала или понравилась информация по разработке на Delph - "Как поместить иконку в окошко подсказки", Вы можете поставить закладку в социальной сети или в своём блоге на данную страницу:

Так же Вы можете задать вопрос по работе этого модуля или примера через форму обратной связи, в сообщение обязательно указывайте название или ссылку на статью!
   


Copyright © 2008 - 2024 Дискета.info