Ошибка Fatal: Syntax error, ";" expected

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ошибка Fatal: Syntax error, ";" expected

Сообщение Mire » 03.05.2019 10:57:11

Доброго времени суток, препод дала задание, но при компиляции программа выдает ошибку "cloud.pas(51,12) Fatal: Syntax error, ";" expected but "identifier TFORM1" found"
В код никакой отсебятины не добавлялось, полное копирование из задания.
Код: Выделить всё
unit cloud;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, Forms, Controls, Graphics, Dialogs, FileUtil, Buttons, ExtCtrls, StdCtrls;

type

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    PaintBox1: TPaintBox;
    Timer1: TTimer;
    procedure FormCreate(Sender: TObject);
  private
   { private declarations }
    //Координаты прорисовки объекта.Доступны всем процедурам класса TForm1
    x1,y1:Integer;
  public
    { public declarations }
    //Процедура прорисовки облака
    procedure Cloud(x,y:Integer; ColorCloud:TColor);
  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

procedure TForm1.FormCreate(Sender: TObject);
begin

end;

{ TForm1 }
procedure TForm1.Cloud(x,y:Integer; ColorCloud:TColor);
begin
   //Прорисовка облака из двух эллипсов
   with PaintBox1.Canvas do begin
     Pen.Style:=psClear;
     Brush.Color:=ColorCloud;
     Ellipse(x,y,x+80,y+40);
     Ellipse(x+30,y+10,x+100,y+50);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
   //установка начальных значений
   x1:=0;
   y1:=50;
   Timer.Interval:=100;
   //прорисовка картинки по которой двигается объект
   PaintBox1.Canvas.Brush.Color:=clBlue;
   PaintBox1.Canvas.Rectangle(0,0,PaintBox1.Width,PaintBox1.Height);
   //Включение таймера-запуск анимации
   Timer1.Enabled:=true;
   end;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  //закраска объекта цветом фона
  Cloud(x1,y1,clBlue)
  //изменение координат прорисовки
  x1:=x1+1;
  //прорисовка объекта в новом месте
  Cloud(x1,y1,clWhite);
  end;
end.
                                                     

Очень надеюсь на вашу помощь)
Mire
незнакомец
 
Сообщения: 1
Зарегистрирован: 03.05.2019 10:49:20

Re: Ошибка Fatal: Syntax error, ";" expected

Сообщение Awkward » 04.05.2019 12:14:19

Код: Выделить всё
procedure TForm1.Cloud(x,y:Integer; ColorCloud:TColor);
begin
   //Прорисовка облака из двух эллипсов
   with PaintBox1.Canvas do begin // <<<<< не парный begin
     Pen.Style:=psClear;
     Brush.Color:=ColorCloud;
     Ellipse(x,y,x+80,y+40);
     Ellipse(x+30,y+10,x+100,y+50);
  end; // <<<<<<  вставить
end;
Awkward
новенький
 
Сообщения: 17
Зарегистрирован: 19.01.2017 00:06:47

Re: Ошибка Fatal: Syntax error, ";" expected

Сообщение iskander » 04.05.2019 12:29:38

И еще вот здесь:
Код: Выделить всё
procedure TForm1.Button1Click(Sender: TObject);
begin
   //установка начальных значений
   x1:=0;
   y1:=50;
   Timer.Interval:=100;
   //прорисовка картинки по которой двигается объект
   PaintBox1.Canvas.Brush.Color:=clBlue;
   PaintBox1.Canvas.Rectangle(0,0,PaintBox1.Width,PaintBox1.Height);
   //Включение таймера-запуск анимации
   Timer1.Enabled:=true;
   //end; <-------- убрать лишний end
end;
iskander
постоялец
 
Сообщения: 178
Зарегистрирован: 08.01.2012 18:43:34

Re: Ошибка Fatal: Syntax error, ";" expected

Сообщение VirtUX » 05.05.2019 11:27:40

Mire писал(а):procedure TForm1.Timer1Timer(Sender: TObject);
begin
//закраска объекта цветом фона
Cloud(x1,y1,clBlue); <---- тут пропустили ";"
//изменение координат прорисовки
x1:=x1+1;
//прорисовка объекта в новом месте
Cloud(x1,y1,clWhite);
end;
Аватара пользователя
VirtUX
энтузиаст
 
Сообщения: 865
Зарегистрирован: 05.02.2008 10:52:19
Откуда: Крым, Алушта


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot], ZuluSpirit и гости: 12

Рейтинг@Mail.ru