- •10 Конспект и задания по основам программирования на Delphi
- •1. Общие определения
- •2. Типы файлов Delphi:
- •3. Окно Delphi:
- •4. Файл проекта по умолчанию (Project1.Dpr):
- •5. Основные свойства формы (окна программы):
- •6. Стандартные компоненты интерфейса:
- •8. Ввод данных:
- •9. Вывод данных:
- •10. События и обработка событий
- •7. Типы и преобразования данных
- •IntToStr (Выражение):String;
- •11. Обработка исключений
- •12. Работа с таблицами
- •13. Работа с рисунками
- •14. Работа с графикой в окне формы
- •Варианты индивидуального задания № 1 по теме «Разработка простого проекта Delphi»
- •Var p:integer; {удаление лишних пробелов}
- •Var n,p,code:integer; {разбор строки в массив}
13. Работа с рисунками
Панель Дополнительная:
Image
– рисунок
.
Основные свойства рисунка:
Picture – ссылка на файл с рисунком
AutoSize – переключатель автомасштабирования области вывода (Истина/Ложь)
Stretch – переключатель автоматического сжатия или растяжения картинки по размеру области вывода (Истина/Ложь)
TransParent – прозрачный фон (Истина/Ложь)
Picture.LoadFromFile (‘ПутьКФайлу’) – метод для загрузки рисунка из файла.
Типы загружаемых рисунков по умолчанию: BMP, ICO, WMF
Пример: закроем форму рисунком
procedure TForm1.FormActivate(Sender: TObject);
var BitMap:TBitmap;
begin
with Image1 do begin
AutoSize:=False;
Left:=0;
Top:=0;
Width:=Form1.ClientWidth;
Height:=Form1.ClientHeight;
Stretch:=True;
Picture.LoadFromFile ('c:\Windows\Паркет.bmp');
end;
end;
14. Работа с графикой в окне формы
Canvas – клиентская область формы; изучим ее основные свойства:
Brush – цвет и шаблон заполнения для кисти;
Brush.Color:=clYellow;
Brush.Style:=bsBdiagonal;
//Другие стили: сплошная - bsSolid нет заливки - bsClear
ClicpRect – координаты отсекающего прямоугольника на экране (только чтение)
Rectangle (ClipRect.Left,ClipRect.Top,ClipRect.Right,ClipRect.Bottom);
Var R: TRect;
R := Canvas.GetClientRect;
Canvas.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
CopyMode – режим вывода графики
cmSrcCopy – обычное наложение, cmNotSrcCopy – инверсия цвета, cmMergeCopy – наложение «И»
Font – шрифт для вывода на форму
With Canvas do begin
Font.Color:=clBlue;
Font.Name:=’Arial’;
Font.Size:=14;
Font.Style:=[fsItalic];
end;
Pen – тип карандаша для отрисовки линий и границ фигур
Pen.Width – ширина в пикселах, Color – цвет, Mode – режим наложения рисования линий (pmCopy, pmNotCopy, pmMerge), Style – тип линии (psSolid, psDash, psDot)
Pixels[x,y] – массив цветов пикселов
…и методы :
Arc(Left,Top, Right,Bottom, x3, y3, x4, y4); рисует дугу
Left,Top, Right,Bottom, - координаты прямоугольника, в который вписана дуга, (x3,y3),(x4,y4) – через эти точки проходят прямые из центра эллипса, определяющие начало и конец дуги
Ellipse (Left,Top, Right,Bottom); рисует эллипс
FillRect – заливка области цветом кисти
Var R:TRect;
R:=Rect(20,20,150,150);
Canvas.Brush.Color:=clRed;
Canvas.FillRect (R);
LineTo (X,Y) – линия из позиции пера в точку (X,Y)
MoveTo (X,Y) – установить перо в точку (X,Y)
Polygon – отрисовка замкнутого прямоугольника
Canvas.Brush.Color:=clRed;
Canvas.Polygon ([Point(10,10),Point (30,10),Point(130,30)];
PolyLine – незамкнутый многогранник
Rectangle (x1,y1,x2,y2); прямоугольник по 2 указанным углам
TextHeight, TextWidth – определяют высоту и ширину строки в пикселах:
procedure TForm1.FormPaint(Sender: TObject);
var s:String;
begin
s:='Delphi';
with Canvas do begin
Pen.Color:=clRed;
Brush.Style:=bsClear;
TextOut (10,10,s);
Rectangle (10,10,10+TextWidth(s),10+TextHeight(s));
end;
end;
Draw – отрисовка графики на форме:
procedure TForm1.FormPaint(Sender: TObject);
var BitMap:TBitmap;
begin
Bitmap := TBitmap.Create;
Bitmap.LoadFromFile('c:\Windows\Паркет.bmp');
Canvas.Draw(0, 0, Bitmap);
Bitmap.Free;
end;
