Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


TFont (шрифт), TPen (перо), TBrush (кисть)



Цель работы:

Построить изображение следующего вида, где овал обозначен красным цветом, а надпись белым цветом.

       
   
ФОРМА
 
 

 


Рис3. Форма к лабораторной работе №4

Указания к работе

 

1. Перенесите на форму компонент PaintBox со страницы System

2. Выполните двойной щелчок по компоненту PaintBox и затем наберите текст программы:

 

Procedure Tform1.PaintBox1Paint (Sender: TObject);

var

x, y: integer;

begin

with paintbox1, canvas do

begin

brush.color: =clred;

ellipse(0, 0, width, height);

font.Name: =’arial’;

font.Size: =height div 5;

font.Style: =[fsbold, fsitalic];

font.Color: =clwhite;

x: =(width-textwidth(‘delphi’)) div 2;

y: =(height – textheight(‘d’)) div 2;

textout(x, y, ‘delphi’)

end;

end;

end.

Дополнительное задание: Внесите в рисунок следующие изменения: сама линия овала должна быть красным цветом, а внутренняя область овала закрашена синим цветом, причем узором в виде сетки, цвет текста обозначьте черным цветом. Для рисования линии овала используйте класс TPen (Перо). Используйте стиль кисти (свойство Style) bsCross (узор сеткой).

Лабopaторная работа № 4

Просмотр изображений с помощью компонентов

ОleContainer и Mediaplayer

 

Цель работы: Разработать приложения, предназначенные для просмотра изображений с помощью компонентов ОleContainer и Mediaplayer.

Указания к работе

Просмотр изображения с помощью компонента TОleContainer.

1. Создайте приложение с пустой формой и вставьте в нее главное меню TMainMenu c единственной командой Файл.

2. Поместите на форму компонент TOleContainer. Установите в его свойство Allign значение alClient.

3. Напишите такой обработчик события OnCreate для формы Form1:

 

Procedure TForm1.FormCreate (Sender: TObject);

Const

BMP_Name =

‘C: \Program Files\Common Files\Borland ‘+ ‘Shared\Images\Splash\16Cоlor\athena.bmp’;

begin

OleContainer1.CreateObjectFromFile(BMP_Name, False)

end;

 

Теперь можно использовать графический редактор Paint для редактирования изображения.

Команда главного меню Файл не задействована, но при запуске сервера происходит замена пунктов главного меню программы пунктами главного меню сервера.

Просмотр фильма с помощью компонента TMediaPlayer

1. Поместите на пустую форму две панели. Удалите содержимое их свойств Caption. Для нижней панели установите Align = alBottom, для верхней Align=alClient

2. Верхняя панель будет экраном для отображения изображения. Установите для нее Name = pnDisplay

3. Поместите на нижнюю панель компонент TMediaPlayer cо страницы System и введите в его свойство Display ссылку на панель pnDisplay. Раскройте список свойства FileName и выберите в нем файл

С: \Program Files\Borland\Delphi7\Demos\CoolStuf\speedis.avi.

Поместите в его свойство AutoOpen значение True.

4. Напишите такой обработчик события ОnResize для формы:

 

Procedure TForm1.DisplayResize(Sender: TObject);

begin

MediaPlayer1.DisplayRect: =

Rect(0, 0, Display.Width, Display.Height);

end;

5. После щелчка мышью по кнопке вы увидите рекламный ролик «speed is Delphi».

Лабopaторная работа № 5

Просмотр изображений с помощью

Компонента tDrawgrid

 

Цель работы: разработать приложение, реализующее просмотр графических файлов с помощью таблицы TDrawGrid.

Указания к работе

1. Перенесите на форму компонент TDrawGrid со страницы Additional и задайте для него значения свойств, согласно таблице 1.

 

Таблица 1

 

Значения свойств компонента TDrawGrid

Свойство Значение Комментарий
Align alClient Таблица занимает всю клиентскую часть окна
СolCount В таблице 2 колонки
FixedCols Нет фиксированных колонок
FixedRows Нет фиксированных рядов
Name dgDraw Имя таблицы
RowCount В таблице 2 строки
ScrollBars ssNone Не надо вставлять полосы прокрутки

3. Наберите листинг программы. В нем используются следующие обработчики событий:

для формы: onCreate, onResize, onDeactivate;

для таблицы: onDrawCell – для прорисовки картинок в ячейках таблицы.

unit DrawGridMain;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids;

 

type

TForm1 = class(TForm)

dgDraw: TDrawGrid;

procedure FormCreate(Sender: TObject);

procedure dgDrawDrawCell(Sender: TObject; ACol, ARow: Integer;

Rect: TRect; State: TGridDrawState);

procedure FormResize(Sender: TObject);

procedure FormDeactivate(Sender: TObject);

 

 

private

{ Private declarations }

slBitMap: TStringList;

// Список подписей и изображений

public

{ Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

procedure TForm1.FormCreate(Sender: TObject);

 

const

Bmp_path='c: \Program Files\Common Files\Borland Shared\'+'Images\Splash\16Color\';

FNames: array [0..3] of String = ('athena.bmp', 'construc.bmp', 'earth.bmp', 'technlgy.bmp');

var

k: integer;

begin

// создаем список строк:

slBitMap: =TStringList.Create;

// вставляем в него картинки:

with slBitMap do for k: =0 to 3 do

begin

Add(fnames[k]);

Objects[k]: =TBitMap.Create;

(Objects[k] as TBitMap).LoadFromFile(Bmp_Path+FNames[k]);

end;

end;

 

procedure TForm1.dgDrawDrawCell(Sender: TObject; ACol, ARow: Integer;

Rect: TRect; State: TGridDrawState);

var

k: integer;

begin

// Пересчитываем координаты ячейки в индекс списка:

k: =2*ACol+ARow;

with dgDraw.Canvas, Rect, slBitMap do

 

begin

// Уменьшаем высоту картинки для вывода под ней текста

Bottom: =Bottom - TextHeight('1')-2;

// Рисуем картинку

StretchDraw(Rect, (Objects[k] as TBitMap));

// Выводим текст

TextOut(Left+(Right-Left-TextWidth(slBitMap[k])) div 2, Bottom +1, slBitMap[k]);

end;

end;

 

procedure TForm1.FormResize(Sender: TObject);

// Изменяет размеры ячеек при изменении размеров окна

begin

with dgDraw do

begin

DefaultColWidth: =ClientRect.Right div 2-1;

DefaultRowHeight: =ClientRect.Bottom div 2 -1;

end;

end;

 

procedure TForm1.FormDeactivate(Sender: TObject);

// Удаляем список при разрушении формы

begin

slBitMap.Free;

end;

end.

3. Запустите программу на исполнение. Таблица TDrawGrid имеет следующий вид:

Рис 3. Форма к лабораторной работе №5

Лабopaторная работа № 6


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-07-14; Просмотров: 528; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.028 с.)
Главная | Случайная страница | Обратная связь