Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Как поместить иконку в окошко подсказки

Чтобы увидеть это в действии, всё, что надо сделать, это поместить этот юнит в список 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.

Проект Delphi World © Выпуск 2002 - 2024
Автор проекта: USU Software
Вы можете выкупить этот проект.