Иллюстрированный самоучитель по Delphi 7 для профессионалов

Класс TMetafile. Класс Tlcon.

Инкапсулирует свойства метафайла Windows. С появлением Windows 95 к стандартному метафайлу (формат WMF) добавился расширенный (формат EMF), обладающий расширенными возможностями. Соответственно в объекте TMetafile имеется свойство:

property Enhanced: Boolean;

Внутреннее представление метафайла всегда новое (EMF), и устанавливать свойство Enhanced в значение False следует только для обеспечения совместимости со старыми программами.

В классе TMetafile перекрываются методы Assign, LoadFromStream, SaveToStream, LoadFromClipboardFormat, SaveToClipboardFormat. В буфер обмена объект помещает свое содержимое в формате CF_ENHMETAFILE.

Помимо общих, класс имеет следующие свойства.

  • дескриптор метафайла:
property Handle: HMETAFILE;
  • свойство:
property inch: Word.

Число точек на дюйм в координатной системе метафайла. Связано с установленным режимом отображения;

  • свойства:
property MMHeight: Integer;
property MMWidth: Integer;

Это настоящие высота и ширина метафайла в единицах, равных 0.01 мм. Свойства Height и width задаются в пикселах;

  • в метафайл можно добавить свою палитру:
property Palette: HPalette;
  • вы можете увековечить себя, установив два свойства метафайла:
property Description: string;
property CreatedBy: string;

Содержащаяся в них информация записывается в файл и может быть прочитана благодарными потомками.

Класс Tlcon

Этот класс инкапсулирует значок Windows.

Не пытайтесь изменить размеры значка – они по определению постоянны (и равны GetSystemMetrics(SM_CXICON) и GetSystemMetrics(SM_CYICON)), и при попытке присвоить новые значения возникает исключительная ситуация EinvalidGraphicOperation. Значок нельзя также читать и писать в буфер обмена, т. к. в Windows нет соответствующего формата.

Свойство Transparent для значка всегда равно значению True. Изменить его нельзя – значки прозрачны также по определению.

В этом классе перекрываются методы класса TGraphic: Assign, LoadFromStream и SaveToStream. Дополнительно также определены – дескриптор значка:

property Handle: HICON;

И метод который "отдает" дескриптор – возвращает его значение, обнуляя ссылку на него в объекте:

function ReieaseHandie: HICON;
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.