Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
3
Добавлен:
15.04.2015
Размер:
23.33 Кб
Скачать
unit Unit2;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ExtCtrls, Menus, Buttons;


type
TPic = class(TForm)
StatusBar1: TStatusBar;
ScrollBox1: TScrollBox;
Image1: TImage;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
procedure FormActivate(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image1ContextPopup(Sender: TObject; MousePos: TPoint;
var Handled: Boolean);
procedure N1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDeactivate(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N12Click(Sender: TObject);
procedure N13Click(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N16Click(Sender: TObject);



private
{ Private declarations }
public
{ Public declarations }
end;

var
//Форма
Pic: TPic;

draw: boolean;//Флаг рисования
stpoint,drpoint: TPoint; //Точки начала и завершения рисования
PArray: array[1..10] of TPoint; //Массив точек для рисования многоугольника
cfill:TColor;//Цвет точки
Select: integer;//Флаг выделения
//
XS, YS: integer;
XCM, YCM: integer; //Координаты вызова меню
UndoBuf: array[1..10] of TBitmap; //Массив картинок для буфера отката
x1, y1: integer;//Конечные координаты
Hotkat,Wotkat: integer;//Ширина и высота отката
Undo: Boolean;
www, hhh: integer;
implementation
uses unit1, Unit4, Unit3;
{$R *.dfm}
//подключение ресурса с курсорами
{$R Proh.res}
//----------------------------------------------------------------------------//
//Активация формы
procedure TPic.FormActivate(Sender: TObject);
begin
//Сохранение номера активной формы
act_form:=(Sender as Tpic).Tag;
end;
//----------------------------------------------------------------------------//
//Процедура при закрытии формы
procedure TPic.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
var
//Локальные переменные для расчета числа открытых форм
i, g: integer;
begin
//Присвоение текущего значения тэга
i:=(Sender as Tpic).Tag;
//Очищение картинки
(Sender as Tpic).Image1.Picture.Bitmap.FreeImage;
//Цикл для прохода по всем открытым формам
for g:=(i+1) to (col_form) do
//Присвоение нового номера форме
Form_pic[g-1]:=Form_pic[g];
//Уменьшение переменной на 1
dec(col_form);
//Присвоение
act_form:=col_form;
//Проверка условия закрытия всех форм
if act_form=0 then
begin
//Деактивация пунктов меню Сохранить, Фильтр и Изменение размера
redactor.N8.Enabled:=false;
redactor.N9.Enabled:=false;
redactor.save.Enabled:=false;
end;
end;
//----------------------------------------------------------------------------//
//Процедура движения мыши
procedure TPic.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
c: TColor;//Переменная хранения цвета
d, i: integer;///Переменные d - для расчета i - счетчик
begin
//Считывание и показ текущих координат мыши
StatusBar1.Panels[1].Text:='('+inttostr(X)+','+inttostr(Y)+')';
//Цвет точки под курсором
c:= Image1.Canvas.Pixels[X,Y];
//Показ цвета точки под курсором в статус-баре
StatusBar1.Panels[2].Text:='('+colortostring(c)+')';
//Проверка нажатия кнопок и использование соответствующих курсоров для Image1
If redactor.Brush.Down then Image1.Cursor:=1;
If redactor.Line.Down then Image1.Cursor:=2;
If redactor.Eraser.Down then Image1.Cursor:=3;
If redactor.Rectangle.Down then Image1.Cursor:=4;
If redactor.Ellips.Down then Image1.Cursor:=5;
If redactor.Fill.Down then Image1.Cursor:=6;
If redactor.Angle.Down then Image1.Cursor:=7;
If redactor.Select.Down then Image1.Cursor:=8;
//Проверка наличия флага рисования
if draw then
begin
//Сохранение начальных координат
x1:=stpoint.x;
y1:=stpoint.y;
//Если нажата кнопка Линия
if redactor.Line.Down then
begin
//Для объекта Canvas делаем:
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
//Цвет ривания
Pen.Color:=drawcolor;
//Метод отрисовки линии - NotXor
Pen.Mode:=pmNotXor;
//Пунктирная линия
Pen.Style:=psDash;

Pen.Width:=LW;
//Рисование линии от х1, у1 до drpoint.x,drpoint.y
MoveTo(x1,y1);
LineTo(drpoint.x,drpoint.y);
//стирание предыдущей
MoveTo(x1,y1);
LineTo(X,Y);
//Сообщение в статусбаре
StatusBar1.Panels[0].Text:='Линия';
end;
//Присовоение координат
drpoint.x:=X;
drpoint.y:=Y;
end
else
//если нажата кнопка Кисть
if redactor.Brush.Down then
begin
//Если толщина рисования 1 - рисуем точку
if BW=1 then with (Sender as TImage).Picture.Bitmap.Canvas do Pixels[x1,y1]:=drawcolor
else
Begin
//Определяем переменную
d:=BW div 2;
//Для Canvas делаем:
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
Pen.Width:=1;
//Цвет
Pen.Color:=drawcolor;
//Метод отрисовки линии
Pen.Mode:=pmCopy;
//Цвет кисти
Brush.Color:=drawcolor;
//Рисование эллипса
Ellipse(X-d, Y-d, X-d+BW, Y-d+BW);
end;
//Смена статуса в статусбаре
StatusBar1.Panels[0].Text:='Рисование кистью';
end;
end
else
//Если нажата кнопка стерка
if redactor.Eraser.Down then
begin
//Если ЕW = 1 рисуем точку цветом фона
if EW=1 then with (Sender as TImage).Picture.Bitmap.Canvas do Pixels[x1,y1]:=bcolor
else
//определяем переменную
d:=EW div 2;
//Для Canvas делаем:
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
Pen.Width:=1;
//Присваиваем цвет
Pen.Color:=bcolor;
//Метод отрисовки линии
Pen.Mode:=pmCopy;
//Цвет кисти
Brush.Color:=bcolor;
//Рисуем квадрат
rectangle(X-d,Y-d,X-d+EW,Y-d+EW);
end;
//Обновляем статусбар
StatusBar1.Panels[0].Text:='Стирание';
end
else
//если нажата кнопка Прямоугольник
if redactor.Rectangle.Down then
begin
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
//Цвет линии
Pen.Color:=clBlack;
//Стиль рисования
Pen.Style:=psDash;
//Метод отрисовки линии - NotXor
Pen.Mode:=pmNotXor;
//Толщина линии
Pen.Width:=RW;
//Стиль кисти
Brush.Style:=bsClear;
//Рисование прямоугольника
Rectangle(x1,y1,drpoint.x,drpoint.y);
//Стирается предыдущий
Rectangle(x1,y1, X, Y);
end;
//Смена статуса в статусбаре
StatusBar1.Panels[0].Text:='Прямоугольник';
//Присвоение кординат
drpoint.x:=X;
drpoint.y:=Y;
end
else
//если нажата кнопка "Эллипс"
if redactor.Ellips.Down then
begin
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
//Цвет
Pen.Color:=clBlack;
//стиль отрисовки линии
Pen.Style:=psDash;
//Метод отрисовки линии - NotXor
Pen.Mode:=pmNotXor;
//Толщина
Pen.Width:=1;//EllipW;
//Стиль кисти
Brush.Style:=bsClear;
//Рисуем эллипс
Ellipse(x1,y1,drpoint.x,drpoint.y);
//Стираем предыдущий
Ellipse(x1,y1, X, Y);
end;
//Смена статуса в статус баре
StatusBar1.Panels[0].Text:='Эллипс';
//Перезапись координат точки
drpoint.x:=X;
drpoint.y:=Y;
end
else
if redactor.Angle.Down then
begin
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
//Цвет
Pen.Color:=clBlack;
//Стиль пунктирный
Pen.Style:=psDash;
//Метод отрисовки линии - NotXor
Pen.Mode:=pmNotXor;
//Толщина
Pen.Width:=1;//AngleW;
//Стиль кисти
Brush.Style:=bsClear;
//Рисуем многоугольник
Polygon(Slice(PArray,Nangle));
//Пересчитываем координаты углов
for i:=1 to 10 do
begin
//Рассчет координат углов и запись их в массив
PArray[i].X:=round(((X+stpoint.x)/2)+((X-stpoint.x)/2)*cos(2*pi*i/NAngle));
PArray[i].Y:=round(((Y+stpoint.y)/2)-((Y-stpoint.y)/2)*sin(2*pi*i/NAngle));
end;
//Стираем предыдущий
Polygon(Slice(PArray,Nangle));
end;
//Смена статуса
StatusBar1.Panels[0].Text:='Многоугольник';
drpoint.x:=X;
drpoint.y:=Y;
end
else
//если нажата кнопка Выделение
if redactor.Select.Down then
begin
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
//Цвет
Pen.Color:=clBlue;
//Стиль рисования линии
Pen.Style:=psDashDot;
//Метод отрисовки линии - NotXor
Pen.Mode:=pmNotXor;
//Толщина
Pen.Width:=1;
//Стиль кисти
Brush.Style:=bsClear;
//Рисование прямоугольника
Rectangle(x1,y1,drpoint.x,drpoint.y);
//Стрирание предыдущего
Rectangle(x1,y1, X, Y);
end;
//Смена статуса
StatusBar1.Panels[0].Text:='Выделение';
//Перезапись координат
drpoint.x:=X;
drpoint.y:=Y;
XS:=X;
YS:=Y;
//Флаг выделения
Select:= col_form;
end
end;
end;
//------------------------------------------------------------------------------
// Процедура выполняемая при нажатии кнопки мыши
procedure TPic.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var i: integer;
begin
//Если нажата левая кнопка
if (Button=mbLeft) then
begin
//Сохранения координат нажатия
stpoint:=Point(X,Y);
drpoint:=stpoint;
//Поднятие флага рисования
draw:=true;
//Расчет координат многоугольника
for i:=1 to 10 do
begin
//Рассчет координат углов и запись их в массив
PArray[i].X:=round(((X+stpoint.x)/2)+((X-stpoint.x)/2)*cos(2*pi*i/NAngle));
PArray[i].Y:=round(((Y+stpoint.y)/2)-((Y-stpoint.y)/2)*sin(2*pi*i/NAngle));
end;
//Если поднят флаг выделения
if Select = col_form then
begin
with Image1.Canvas do
begin
//Цвет линии
Pen.Color:=clBlue;
//Стиль рисования
Pen.Style:=psDashDot;
//Метод отрисовки линии - NotXor
Pen.Mode:=pmNotXor;
//Толщина линии
Pen.Width:=1;
//Стиль кисти
Brush.Style:=bsClear;
//Рисование конечного прямоугольника
Rectangle(x1 ,y1 , XS, YS);
end;
//снятие флага выделения
Select:= 0;
end;
//Содание картинки в буфере обмена
Undo:=true;
//UndoBuf[act_form].Width:=Image1.Picture.Bitmap.Width;
//UndoBuf[act_form].Height:=Image1.Picture.Bitmap.Height;
//UndoBuf[act_form].Canvas.CopyRect(Rect(0,0,UndoBuf[act_form].Width, UndoBuf[act_form].Height),Image1.Canvas,Rect(0,0,UndoBuf[act_form].Width,UndoBuf[act_form].Height));
//Если нажата кнопка выделение
if redactor.Select.Down then
begin

with Image1.Canvas do
begin
//Цвет
Pen.Color:=redactor.BcColor.Color;
//Стиль
Pen.Style:=psDashDot;
//Метод отрисовки линии - NotXor
Pen.Mode:=pmNotXor;
Pen.Width:=1;
Brush.Style:=bsClear;
Rectangle(x1 ,y1 , XS, YS);
end;
end else
begin
//Содание картинки в буфере обмена
UndoBuf[act_form].Width:=Form_pic[act_form].Image1.Picture.Bitmap.Width;
UndoBuf[act_form].Height:=Form_pic[act_form].Image1.Picture.Bitmap.Height;
UndoBuf[act_form].Canvas.CopyRect(Rect(0,0,UndoBuf[act_form].Width, UndoBuf[act_form].Height),Form_pic[act_form].Image1.Canvas,Rect(0,0,UndoBuf[act_form].Width,UndoBuf[act_form].Height));
end;
end;
end;
//------------------------------------------------------------------------------
//Процедура при отпускании кнопки мыши
procedure TPic.Image1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if (Button=mbLeft) then
begin
//Снятие флага рисования
draw:=false;
//Если была нажата кнопка Линия
if redactor.Line.Down then
begin
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
Pen.Color:=drawcolor;
//Метод отрисовки линии
Pen.Mode:=pmCopy;
//Стиль рисования
Pen.Style:=psSolid;
//Толщина
Pen.Width:=LW;
//рисование линии
MoveTo(stpoint.x,stpoint.y);
LineTo(X,Y);
end;
end
//Если была нажата кнопка Прямоугольник
else if redactor.Rectangle.Down then
begin
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
Pen.Color:=drawcolor;
//Метод отрисовки линии
Pen.Mode:=pmCopy;
//Стиль отрисовки
pen.Style:=psSolid;
//Цвет кисти
Brush.Color:=bcolor;
//Толшина линии
Pen.Width:=RW;
//Если выбрано Заполнение
if redactor.CheckBox1.Checked then
//Смена стиля рисования
Brush.Style:=bsSolid else
Brush.Style:=bsClear;
//Рисование конечного варианта прямоугольника
Rectangle(stpoint.x,stpoint.y, X, Y);
end;
end
else if redactor.Ellips.Down then
begin
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
//Цвет линии
Pen.Color:=drawcolor;
//Метод отрисовки линии
Pen.Mode:=pmCopy;
//Стиль
pen.Style:=psSolid;
//Цвет кисти
Brush.Color:=bcolor;
//Толщина линии
Pen.Width:=EllipW;
//Если выбрано Заполнение
if redactor.CheckBox1.Checked then
Brush.Style:=bsSolid else
Brush.Style:=bsClear;
//Рисование конечного варианта прямоугольника
Ellipse(stpoint.x,stpoint.y, X, Y);
end;
end
//Если нажата кнопка многоугольник
else if redactor.Angle.Down then
begin
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
//Цвет линии
Pen.Color:=drawcolor;
//Метод отрисовки линии
Pen.Mode:=pmCopy;
//Стиль рисования линии
pen.Style:=psSolid;
//Цвет кисти
Brush.Color:=bcolor;
//Толщина линии
Pen.Width:=AngleW;
//Если выбрано Заполнение
if redactor.CheckBox1.Checked then
Brush.Style:=bsSolid else
Brush.Style:=bsClear;
//Рисование конечного варианта прямоугольника
Polygon(Slice(PArray,Nangle));
end;
end;
//Если нажата кнопка Заливка
if redactor.Fill.Down then
begin
with (Sender as TImage).Picture.Bitmap.Canvas do
begin
//Определение цвета точки под курсором
cfill:=Pixels[X,Y];
//Цвет кисли
Brush.color:=bcolor;
//Заливка цветом
FloodFill(X,Y,cfill,fsSurface)
end;
end;
end;
end;
//----------------------------------------------------------------------------//
//Вызов контекстного меню
procedure TPic.Image1ContextPopup(Sender: TObject; MousePos: TPoint;
var Handled: Boolean);
begin
//Отрисовка меню
PopupMenu1.Popup(Left+MousePos.X-10,Top+MousePos.Y+20);
//Сожранение координат вызова меню
XCM:=MousePos.X;
YCM:= MousePos.Y;
end;
//Нажатие на кнопку "Выбор цвета" в контекстном меню
procedure TPic.N1Click(Sender: TObject);
begin
//если диалог завершен успешно
if redactor.ColorDialog1.Execute then
begin
//Присваивание цветов панелям на главной форме
drawcolor:=redactor.ColorDialog1.Color;
redactor.FColor.Color:=drawcolor;
end;
end;
//----------------------------------------------------------------------------//
//Процедура при создании формы
procedure TPic.FormCreate(Sender: TObject);
begin
undo:=false;
//Регистрируем курсоры
Screen.Cursors[1]:=LoadCursor(HInstance, 'BRAS');
Screen.Cursors[2]:=LoadCursor(HInstance, 'LINE');
Screen.Cursors[3]:=LoadCursor(HInstance, 'ERAS');
Screen.Cursors[4]:=LoadCursor(HInstance, 'KW');
Screen.Cursors[5]:=LoadCursor(HInstance, 'KR');
Screen.Cursors[6]:=LoadCursor(HInstance, 'ZAL');
Screen.Cursors[7]:=LoadCursor(HInstance, 'ANGL');
Screen.Cursors[8]:=LoadCursor(HInstance, 'SEL');
//Создание массива картинок, для буфера отката
UndoBuf[act_form]:= TBitmap.Create;
//Снятие флага выделения
Select:=0;
//Задание текста в статус-баре
StatusBar1.Panels[0].Text:='Ожидание';
//Сохранение высоты и ширины рисунка
Hotkat:= ClientHeight;
Wotkat:=ClientWidth;
//Считывание высоты и ширины
www:=ClientWidth-4;
hhh:=ClientHeight-StatusBar1.Height-4;
//Присвоение переменной ширины и высоты
Image1.Width:=www;
Image1.Height:=hhh;
//Задание цвета карандаша и кисти
Image1.Canvas.Pen.Color:=clWhite;
Image1.Canvas.Brush.Color:=clWhite;
//Создание прямоуг. области
Image1.Canvas.Rectangle(0,0,www,hhh);
end;
//----------------------------------------------------------------------------//
//Процедура при деактивации формы
procedure TPic.FormDeactivate(Sender: TObject);
begin
//если выделение активно
if Select = col_form then
//стираем приямоугольник выделения
begin
with Image1.Canvas do
begin
//Цвет линии
Pen.Color:=clBlue;
//Стиль
Pen.Style:=psDashDot;
//Метод отрисовки линии - NotXor
Pen.Mode:=pmNotXor;
//Толщина
Pen.Width:=1;
//Стиль кисти
Brush.Style:=bsClear;
//Рисование прямоугольника
Rectangle(x1 ,y1 , XS, YS);
end;
end;
//Опускаем флаг выделения
Select:= 0;
end;
//----------------------------------------------------------------------------//
//Нажатие на кнопку "Копировать"
procedure TPic.N3Click(Sender: TObject);
begin
//если поднят флаг выделения
if Select = act_form then
begin
with Image1.Canvas do
begin
Pen.Color:=clBlue;
Pen.Style:=psDashDot;
//Метод отрисовки линии - NotXor
Pen.Mode:=pmNotXor;
Pen.Width:=1;
Brush.Style:=bsClear;
Rectangle(x1 ,y1 , XS, YS);
end;
Select:= 0;
//Задаём размер буфера копирования
CopyBuf.Width:=abs(XS-x1);
CopyBuf.Height:=abs(YS-y1);
//Проверяем как произошло выделение(Сверху вниз или снизу вверх)
if (x1>=XS) and (y1>=YS) then
//Вставляем картинку из буфера
CopyBuf.Canvas.CopyRect(Rect(0, 0, abs(XS-x1), abs(YS-y1)),{CopyBuf.Canvas}Image1.Picture.Bitmap.Canvas, Rect(XS, YS, x1, y1))
else
CopyBuf.Canvas.CopyRect(Rect(0, 0, abs(XS-x1), abs(YS-y1)),{CopyBuf.Canvas}Image1.Picture.Bitmap.Canvas, Rect(x1, y1, XS, YS));
end
else
//Вывод предупреждения
MessageBox(Pic.Handle,'Надо задать область копирования','Предупреждение',0);
end;
//----------------------------------------------------------------------------//
//Нажатие на кнопку "Вставить"
procedure TPic.N4Click(Sender: TObject);
begin
//Содание картинки в буфере обмена
UndoBuf[act_form].Width:=Image1.Picture.Bitmap.Width;
UndoBuf[act_form].Height:=Image1.Picture.Bitmap.Height;
UndoBuf[act_form].Canvas.CopyRect(Rect(0,0,UndoBuf[act_form].Width, UndoBuf[act_form].Height),Image1.Canvas,Rect(0,0,UndoBuf[act_form].Width,UndoBuf[act_form].Height));
//Вставка изображения из буфера копирования
Image1.Canvas.Draw(XCM,YCM, CopyBuf);
Undo:=true;
end;
//----------------------------------------------------------------------------//
//Нажатие на кнопку "Откатить"
procedure TPic.N5Click(Sender: TObject);
begin
if Undo=true then
begin
if act_form=u[act_form] then
begin
ClientHeight:=hr[u[act_form]]+Pic.StatusBar1.Height+4;
ClientWidth:= wr[u[act_form]]+4;
Image1.Picture.Bitmap.Width := wr[u[act_form]];
Image1.Picture.Bitmap.Height:= hr[u[act_form]];
Image1.Canvas.Pen.Color:=clWhite;
Image1.Canvas.Brush.Color:=clWhite;
Image1.Canvas.Draw(0,0, UndoBuf[u[act_form]]);
u[act_form]:=1000;
end
else
//Изменение размера картинки
ClientHeight:=UndoBuf[act_form].Height+Pic.StatusBar1.Height+4 ;
ClientWidth:=UndoBuf[act_form].Width+4;
Image1.Picture.Bitmap.Width := UndoBuf[act_form].Width;
Image1.Picture.Bitmap.Height:= UndoBuf[act_form].Height;
Image1.Canvas.Draw(0,0, UndoBuf[act_form]);
end else
MessageBox(redactor.Handle,'Над картинкой не производилось действий','Предупреждение',0)
end;
//----------------------------------------------------------------------------//
//Нажатие на Фильтр
procedure TPic.N7Click(Sender: TObject);
begin
//Показ формы фильтра
Form4.show;
end;
//----------------------------------------------------------------------------//
//Нажатие на кнопку контекстного меню Кисть
procedure TPic.N9Click(Sender: TObject);
begin
redactor.Brush.Down:=true;
end;
//----------------------------------------------------------------------------//
//Нажатие на кнопку контекстного меню Линия
procedure TPic.N10Click(Sender: TObject);
begin
redactor.Line.Down:=true;
end;
//----------------------------------------------------------------------------//
//Нажатие на кнопку контекстного меню Стерка
procedure TPic.N11Click(Sender: TObject);
begin
redactor.Eraser.Down:=true;
end;
//----------------------------------------------------------------------------//
//Нажатие на кнопку контекстного меню Прямоугольник
procedure TPic.N12Click(Sender: TObject);
begin
redactor.Rectangle.Down:=true;
end;
//----------------------------------------------------------------------------//
//Нажатие на кнопку контекстного меню Эллипс
procedure TPic.N13Click(Sender: TObject);
begin
redactor.Ellips.Down:=true;
end;
//----------------------------------------------------------------------------//
//Нажатие на кнопку контекстного меню Заливка
procedure TPic.N14Click(Sender: TObject);
begin
redactor.Fill.Down:=true;
end;
//----------------------------------------------------------------------------//
//Нажатие на кнопку контекстного меню Многоугольник
procedure TPic.N15Click(Sender: TObject);
begin
redactor.Angle.Down:=true;
end;
//----------------------------------------------------------------------------//
//Нажатие на кнопку контекстного меню Выделение
procedure TPic.N16Click(Sender: TObject);
begin
redactor.Select.Down:=true;
end;

end.
Соседние файлы в папке Галкин_Прошкин
  • #
    15.04.2015150.85 Кб4Unit1.~dfm
  • #
    15.04.201511.73 Кб3Unit1.~pas
  • #
    15.04.201519.69 Кб3Unit2.dcu
  • #
    15.04.201551 б3Unit2.ddp
  • #
    15.04.20152.96 Кб4Unit2.dfm
  • #
    15.04.201523.33 Кб3Unit2.pas
  • #
    15.04.201551 б4Unit2.~ddp
  • #
    15.04.20152.96 Кб3Unit2.~dfm
  • #
    15.04.201523.29 Кб3Unit2.~pas
  • #
    15.04.20157.3 Кб3Unit3.dcu
  • #
    15.04.201551 б3Unit3.ddp