Й способ. Компонента TImage

Если графическое изображение уже создано, например, с помощью графического редактора (например, Paint), то его можно показать с помощью компонентыTImage. В Delphi с помощью этого компонента можно отобразить следующие графические изображения:

1) растровое (*.bmp),

2) пиктограммы (*.ico),

3) типа метафайла (*.wmf),

4) курсора (*.cur).

Вместе с тем известны и другие способы хранения изображений (*.pcx, *.gif, *.tiff, *.jpeg, *.dwg). Для того, чтобы включить изображения других форматов их нужно перевести в формат *.bmp.

Основные свойства компонента TImage:

Canvas - содержит канву для прорисовки изображения;

Center - указывает, надо ли центрировать изображение в границах компонента. Игнорируется, если: AutoSize:= True; или Stretch:= True; и изображение не является пиктограммой (ICO);

Increment - разрешает/запрещает показ большого изображения по мере его загрузки;

Picture -центральное свойство класса. Служит контейнером изображения TPicture;

Proportional - разрешает/запрещает пропорционально уменьшать высоту и ширину изображения, если оно не может целиком уместиться в рабочей зоне компонента;

Stretch - разрешает/запрещает изменять размер изображения так, чтобы оно целиком заполнило клиентскую область компонента;

Transparent - з апрещает/разрешает накладывать собственный фон изображения на фон компонента.

Компонент TImage позволяет поместить графическое изображение в любое место на форме. Собственно картинку можно загрузить во время дизайна в редакторе свойства Picture (Инспектор Объектов). Картинка должна храниться в файле в формате BMP (bitmap), WMF (Windows Meta File) или ICO (icon). При проектировании следует помнить, что изображение, помещенное на форму во время дизайна, включается в файл.DPR и затем прикомпилируется к EXE-файлу. Поэтому такой EXE-файл может получиться достаточно большой. Как альтернативу можно рассмотреть загрузку картинки во время выполнения программы, для этого у свойства Picture (которое является объектом со своим набором свойств и методов) есть специальный метод LoadFromFile.

Пример. По нажатию кнопки необходимо загрузить в компоненту TImage изображение.

Обработчик нажатия кнопки Button1Click выглядит следующим образом:

procedure TForm1.Button1Click(Sender: TObject);

begin

if OpenPictureDialog1.Execute then

begin

Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);

Image1.Stretch:= True;

end;

end;

Если изображение, находящееся в TImage, нужно сохранить в файле, можно применить метод SaveToFile, который также принадлежит свойству Picture.

2-й способ. Компоненты TShape, TBevel

С помощью этого способа имеется возможность рисовать простейшие геометрические фигуры (прямоугольник, квадрат, скругленный прямоугольник, скругленный квадрат, эллипс, окружность). Фигура полностью занимает пространство компонента. Если задан квадрат или круг, а размеры элемента по горизонтали и вертикали отличаются, фигура чертится с размером меньшего измерения. Для создания таких фигур используется компонента TShape, расположенная на закладке Additional под пиктограммой .

Могут быть использованы следующие свойства компонента:

Shape: TShapeType = (stRectangle, stSquare, stRoundRect, stRoundSquare, stEllipse, stCircle) – тип геометрической фигуры,

где

stRectangle – прямоугольник,

stSquare- квадрат,

stRoundRect- скругленный прямоугольник,

stRoundSquare- скругленный квадрат,

stEllipse- эллипс,

stCircle- окружность.

Выбранная фигура рисуется на весь экран компонента TShape. Изменение свойства Shape приводит к немедленной перерисовке изображения.

Brush: TBrush – используется для заливки области;

Pen: TPen -- используются для изменения параметров рамки.

Пример:

Procedure TForm1.FormCreate();

begin

with Shape1 do

begin

Shape:= stRectangle; //Фигура - прямоугольник

Brush.Color:= clRed; //Красный цвет заливки

Pen.Color:= Blue; //Синий цвет рамки

Brush.Style:= bsHorizontal; //Дискретная заливка в виде горизонтальных линий

Pen.Style:= psSolid; //Сплошной тип линии рамки

Pen.Width:= 2; //Толщина линии рамки

end;

end;

Bitmap: TBitmap - позволяет в качестве закраски или заливки использовать растровое изображение, например: Shape1.Brush.Bitmap:= Image1.Picture.Bitmap;.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: