Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.09.2010, 06:32   #1
Terrance!
Пользователь
 
Регистрация: 12.05.2010
Сообщений: 66
По умолчанию мой конструктор класса Delphi - [Error] Unit1.pas(64): Not enough actual parameters

вот мой конструктор класса

Код:
constructor Tunit.create ;
begin
 randomize;
n:=1;
o:=random(4); if o=0 then o:=1;
x:=random(1000);
y:=random(1000);
i:=tbitmap.Create;
i.Transparent:=true;

t:=TTimer.Create(self);

t.Interval:=100;
t.Enabled:=true;
for
t.OnTimer do  begin (self);
i.LoadFromFile(inttostr(n)+'/'+inttostr(o)+'/'+ inttostr(unit1.z)+'.bmp');
form1.PaintBox1.Canvas.Draw(x,y,i);
end;
end;

Не компилируется .
Пишет на этом месте

Код:
for
t.OnTimer do  begin (self);
i.LoadFromFile(inttostr(n)+'/'+inttostr(o)+'/'+ inttostr(unit1.z)+'.bmp');
form1.PaintBox1.Canvas.Draw(x,y,i);
end;
[Error] Unit1.pas(64): Not enough actual parameters


Подскажите пожалуйста, что нужно добавить, чтобы всё было нормально.
Заранее спасибо.

если нужен полный код, то вот он
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  Tunit = class (TComponent)


  private
  protected

  t:Ttimer;
  public
    x,y,o,n:integer;
      i:Tbitmap;

  constructor create;
  published


  end;
  TForm1 = class(TForm)
    Timer1: TTimer;
    PaintBox1: TPaintBox;
    Timer2: TTimer;
    procedure FormKeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Timer1Timer(Sender: TObject);

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

var
  Form1: TForm1;
  z:integer;
implementation

{$R *.dfm}



constructor Tunit.create ;
begin
 randomize;
n:=1;
o:=random(4); if o=0 then o:=1;
x:=random(1000);
y:=random(1000);
i:=tbitmap.Create;
i.Transparent:=true;

t:=TTimer.Create(self);

t.Interval:=100;
t.Enabled:=true;
for
t.OnTimer do  begin (self);
i.LoadFromFile(inttostr(n)+'/'+inttostr(o)+'/'+ inttostr(unit1.z)+'.bmp');
form1.PaintBox1.Canvas.Draw(x,y,i);
end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);


begin

 z:=z+1;
 if z>2 then z:=1;


end;





procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if key=13 then begin
Tunit.create;

end;

end;

end.
Terrance! вне форума Ответить с цитированием
Старый 21.09.2010, 13:16   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

Цитата:
for
t.OnTimer do begin
что это должно было быть т.к. написан полный абсурд.

for +F1 (выделите for нажмите F1 чтобы познакомится с тем как как записать оператор цикла).

P.S. назначение обработчика в программе
Код:
tunit =class
 private
  procedure mytimeproc(sender: TObject);
 end;

t.onTimer:=mytimerproc;

procedure Tunit.mytimerproc(sender: Tobject);
begin
// чтото  делаем
end;
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 21.09.2010 в 13:21.
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Error] Unit1.pas(40): Incompatible types: 'Integer' and 'Extended BETONOMESHALKA Общие вопросы Delphi 9 15.03.2014 17:26
Ошибка - [Error] GraphUnit.pas(104): Types of actual and formal var parameters must be identical Ash Общие вопросы Delphi 8 30.10.2012 21:01
[Pascal Error] Unit1.pas(101): E2008 Incompatible types Rin Мультимедиа в Delphi 5 17.05.2010 12:31
ошибка - [Error] Unit1.pas(325): Operator not applicable to this operand type blackstersl Общие вопросы Delphi 6 27.08.2008 13:17
Not enough actual parameters ZhekON Общие вопросы Delphi 7 01.02.2007 15:26