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.

                          Форма.

 

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

       

                 


 

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

77228. Разработка приложения для платформы Google Аndroid 430.36 KB
  Цель курсовой работы – разработка приложения Underworld, многопользовательской игры, для платформы Google Android, предоставляющего удобный геймплей с использованием мощной функциональности, предоставляемой платформой.
77229. Параллельная реализация алгоритма ACO 69 KB
  В настоящее время биоинформатика также включает в себя теоретические методы и алгоритмы решения задач возникающих из анализа биологических данных.
77230. Интеграция мультимедиа решений с аппаратным ускорением для MID устройства 205 KB
  MID (mobile internet device) - это устройства, которые отвечают требованиям низкого энергопотребления, мобильности, а также предоставляющие обширные возможности для работы в сети. По сути MID - это компьютер по размеру не многим больше телефона...
77231. Создание среды разработки библиотек формул подсчета технико-экономических показателей теплоэлектростанций 443 KB
  В процессе создания новой системы для планирования расчёта и учёта технико-экономических показателей ТЭС возникла необходимость в модуле предоставляющем удобный пользовательский интерфейс и обладающим следующими возможностями: ввод перечня технико-экономических показателей ввод формул...
77232. Конечный мозг, его развитие, строение (отделы, полость, ее стенки, части, белое и серое вещество). Границы долей полушарий большого мозга. Артерии большого мозга 15.86 KB
  Границы долей полушарий большого мозга. Артерии большого мозга. Конечный мозг telencephlon является производным переднего мозгового пузыря и представлен двумя полушариями большого мозга hemispheri cerebrtes. Продольная щель мозга разделяет полушария между собой поперечная щель мозжечок от затылочных долей.
77233. Белое вещество полушарий большого мозга. Внутренняя капсула. Корково-ядерный пусть 16.34 KB
  Белое вещество полушарий большого мозга. Оно представлено многочисленными волокнами: Проекционные волокна представлены пучками афферентных и эфферентных волокон осуществляющих связи проекционных центров коры полушарий большого мозга с базальными ганглиями ядрами ствола головного мозга или ядрами спинного мозга. свода мозга fornix cerebri обеспечивают связь подкорковых центров обоняния c проекционным центром обоняния столбы свода тело свода спайка свода и бахромки гиппокампа Ассоциативные волокна соединяют различные участки коры в...
77234. Обонятельный мозг развивается из вентральной части конечного мозга и состоит из двух отделов: центрального и переферического 243.57 KB
  Рецептор переферические отростки биполярных клеток 1 нейроны в regio olfctori сллизистой полости носа. Центральные отростки биполярных клеток образуют nn. Аксоны митральных клеток проходят в составе обонятельного тракта и вблизи обонятельного треугольника распадаются на три пучка: Медиальный пучок Промежуточный пучок Латеральный пучок Через переднюю спайку мозга в обонятельный тракт противоположной стороны к митральным клеткам обонятельной луковицы. Образованы центральными отростками биполярных клеток расположенных в обонятельной области...
77235. Борозды и извилины лобной доли. Динамическая локализация функций в лобной доле 80.82 KB
  precentrlis inferiorчасто сливается с верхней в единую предцентральную борозду gyrus frontlis inferior Проекционные центры участки коры полушарий большого мозга представляющие собой корковую часть анлизатора имеющие непосредственную морфофункциональную связь через проводящие пути с подкорковыми центрами. Ассоциативные центры участки коры не имеющие непосредственной связи с подкорковыми центрами связанные временной двусторонней связью с проекционными центрами. Центры лобной доли.
77236. Борозды и извилины теменной и затылочной долей коры больший полушарий. Динамическая локализация функций 252.5 KB
  Теменная доля: Борозды: Постцентральная борозда Внутритеменная борозда Извилины: Постцентральная извилина Нижняя теменная долька состоит из надкраевой и угловой извилин Центры: Проекционный центр общей чувствительности g. postcentrlis Проекционный центр схемы тела s. intrprietlis Ассоциативный центр стереогнозии узнавания предметов на ощупь lobus prietlis superior Ассоциативный центр праксии целенаправленных отработанных движений g. suprmrginlis Ассоциативный центр лексии зрительный анализатор письменной...