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.

                          Форма.

 

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

       

                 


 

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

9527. Принцип Оккама. Канон Ллойда - Моргана. Основы синтетической теории эволюции 26 KB
  Принцип Оккама. Канон Ллойда - Моргана. Основы синтетической теории эволюции. Бритва (лезвие) Оккама - методологический принцип, получивший название по имени английского монаха-францисканца, философа-номиналиста Уильяма Оккама. В упрощенном виде о...
9528. Кіммерійці, скіфи, сармати та інші народи на українських землях 46.5 KB
  Кіммерійці, скіфи, сармати та інші народи на українських землях. Бронзовий вік в Україні був завершальною стадією первіснообщинного ладу. В ньому поступово визріли передумови для виникнення станово-класових відносин, які утвердилися в часи патріар...
9529. Информатика и информация. Дискретная и аналоговая информация. 370 KB
  Лекция № 1: Информатика и информация. Понятие информация Понятие информация является базовым в курсе информатики. В переводе с латинского оно означает сведение, разъяснение, ознакомление. Информатика - это комплексная, техническая наука, кото...
9530. Технические средства обработки информации Основные характеристики модулей ПК 330.5 KB
  Лекция № 2: Технические средства обработки информации Основные характеристики модулей ПК Персональные компьютеры обычно состоят из следующих основных модулей: системный блок Блок питания Материнская плата Процессор Памя...
9531. Устройства вывода информации 632.5 KB
  Устройства вывода информации. 1. Видеосистема. Видеосистема предназначена для отображения обрабатываемой информации на экран. Она состоит из монитора и специального устройства, называемого видеоадаптером или видеокартой. 1.1 Мониторы на основе ЭЛТ...
9532. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ 219.5 KB
  Тема № 4: Программное обеспечение Назначение и классификация Программное обеспечение (ПО, software) представляет собой набор специальных программ, позволяющих организовать обработку информации с использованием ПК. Поскольку без ПО функционирование...
9533. Информационные технологии. Искусственный интеллект 548.5 KB
  Информационные технологии Искусственный интеллект Понятие искусственного интеллекта и классификация его основных направлений Искусственный интеллект (ИИ) - это научная дисциплина, возникшая в 50-х гг 20-го века на стыке кибернетики, лингвисти...
9534. Алгоритмизация и программирование 154.5 KB
  Алгоритмизация и программирование Понятие алгоритма Понятие алгоритма такое же основополагающее для информатики, как и понятие информации. Именно поэтому важно в нем разобраться. Название алгоритм произошло от латинской формы имени величайшего сре...
9535. Телекоммуникации и сети Передача информации 407.5 KB
  Телекоммуникации и сети Передача информации Обмен информации производится по каналам передачи информации. Каналы передачи информации могут использовать различные физические принципы. Например, при общении людей информация передается с помощью звуков...