16509

Создать программу в Delphi с задаными действиями

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторная работа № 6 Создать программу в Delphi со следующими действиями. Задайте цвет формы свойство color. Часть первая: На событие мыши OnMouseDown переведите значение переменной Flag:Boolean в True выполните процедуру Form1.Canvas.MoveTox0y0 где x0y0 – позиция курсора мышки и откройте ...

Русский

2013-06-22

75 KB

3 чел.

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

Создать программу в Delphi со следующими действиями.

Задайте цвет формы (свойство color).

Часть первая:

На событие мыши OnMouseDown переведите значение переменной Flag:Boolean в True, выполните процедуру Form1.Canvas.MoveTo(x0,y0) (где x0,y0 – позиция курсора мышки) и откройте файл для записи (см. свой вариант).

На событие OnMouseMove (при условии Flag=True) выполните процедуру Form1.Canvas.LineTo(x,y) и произведите запись координат (x-x0,y-y0)  в файл.

На событие мыши OnMouseUp переведите значение переменной Flag в false и закройте файл.

Часть вторая:

При нажатии правой кнопки мыши, открывается файл, считываются координаты и по ним рисуется сохраненная в файле фигура из точки, где находится указатель мыши.  

Примечание1: Добавьте возможность изменения толщины и цвета пера.

Вариант

нечетный

Файл текстовый

четный

Файл типизированный (например, file of word)


Текст программы

Часть 1:

unit Unit1;

{$mode objfpc}{$H+}

interface

uses

 Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs;

 type

 { TForm1 }

 TForm1 = class(TForm)

   procedure FormCreate(Sender: TObject);

   procedure FormMouseDown(Sender: TObject; Button: TMouseButton;

     Shift: TShiftState; X, Y: Integer);

   procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);

   procedure FormMouseUp(Sender: TObject; Button: TMouseButton;

     Shift: TShiftState; X, Y: Integer);

 private

   { private declarations }

 public

   { public declarations }

 end;

var

 Form1: TForm1;

implementation

 var

 flag:boolean;

 f:TextFile;

 x0,y0:integer;

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);

begin

 Flag := False;

end;

procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;

 Shift: TShiftState; x, y: integer);

var

 dx,dy:integer;

begin

 if not flag then

 begin

   if Button = mbLeft then

   begin

     flag := True;

     AssignFile(f,'risynok.dat');

     ReWrite(f);

     x0:=x;

     y0:=y;

     Canvas.MoveTo(x,y);

   end

   else

   if Button = mbRight then

   begin

     x0:=x;

     y0:=y;

     Canvas.MoveTo(x,y);

     AssignFile(f, 'risynok.dat');

     ReSet(f);

     while not EOF(f) do

     begin

       Readln(f,x,y);

       Canvas.LineTo(x0-x,y0-y);

     end;

     CloseFile(f);

   end;

 end;

end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; x,y: integer);

begin

 if flag then

 begin

   Writeln(f,x0-x,' ',y0-y);

   Canvas.LineTo(x, y);

 end;

end;

procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;

 Shift: TShiftState; x, y: integer);

begin

 if flag then

 begin

   CloseFile(f);

   Flag:=false;

 end;

end;

end.

                          Форма.

 

                Демонстрация работы программы.

       

                 


 

А также другие работы, которые могут Вас заинтересовать

66654. Гай Смит и Soil Taxonomy 232.86 KB
  Гай Смит – одна из наиболее значимых фигур в истории не только американского, но и мирового почвоведения. Его ключевая работой является классификация Soil Taxonomy. Разработка почвенной таксономии часто вызывала очень сильную критику.
66655. Управление качеством в сфере здравоохранения 82.5 KB
  В настоящее время в РФ сложилась система обеспечения качества медицинской помощи основанная на процедурах вневедомственного и внутриведомственного контроля качества медицинской помощи. Внутриведомственный контроль предусматривает применение мер административного воздействия...
66656. Процедура и методы оценки качества услуг 71.5 KB
  По физико-статистическим признакам и процедурам методы контроля и оценки качества подразделяют на пять групп: инструментальный, органолептический, модельно-расчетный, экспертный и социологический. В силу неосязаемости и несохраняемости услуг наибольшее распространение получили методы, относящиеся к последним трем группам.
66657. Методы управления качеством в процессе обслуживания 44 KB
  Метод диаграммного проектирования или структурирования сервисного процесса был предложен американским консультантом Линн Шостак. В сфере услуг потребительские выгоды и само удовлетворение требований потребителей в основном происходят в момент двухстороннего взаимодействия покупателя и продавца в процессе оказания услуги.
66658. Управление качеством туристско-экскурсионных услуг 59 KB
  Предоставлением туристских услуг занимаются организации двух видов тур-операторы и тур-агентства. Они приобретают туристские продукты места в самолетах номера в гостиницах и другие услуги формируют пакеты услуг туризма и продают их прямо или косвенно...
66659. Потребительские свойства услуг 62 KB
  Показатели назначения услуг характеризуют набор свойств услуги определяющий качество выполнения функций для которых она предназначена. Эта группа показателей делится на четыре подгруппы: показатели применения; показатели совместимости; показатели предприятия...
66661. Иннокентий Петрович Герасимов 122.5 KB
  Каждый ученый-почвовед творец. Почвоведу как ни кому другому нужно уметь слушать и слышать природу. Недостаточно ограничиться только своим объектом почвой и недостаточно будет сухих лабораторных данных сколь информативными они бы ни были. И не зря здесь говорится именно ...
66662. Классицизм в архитектуре Москвы 851.12 KB
  Как определенное направление сформировался во Франции, в XVII веке. Французский классицизм освобождал человека от религиозно-церковного влияния, утверждая личность как высшую ценность бытия. Русский классицизм не просто воспринял теорию западноевропейскую...