Разный Pascal

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

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

Разный Pascal

Сообщение avi9526 » 27.08.2010 14:54:13

Здравствуйте, продолжаю переделывать свои скромные наработки в Delphi для совместимости с Lazarus'ом
ну тут и загвоздка

Delphi
Код: Выделить всё
unit Unit1;

...

var
  Form1: TForm1;
  NE: TNotifyEvent;

implementation

...

procedure TForm1.Button1Click(Sender: TObject);
begin
Caption := IntToStr(Random(1000));
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
NE := Button1Click; // <<<<<<<<<<<<<<<<<< Здесь зарыта собака №1
if @NE <> nil  // <<<<<<<<<<<<<<<<<< Здесь зарыта собака №2
then
  NE(Self);
end;

...

end.


Lazarus (FPC)
Код: Выделить всё
unit Unit1;

...

var
  Form1: TForm1;
  NE: TNotifyEvent;

implementation

...

procedure TForm1.Button1Click(Sender: TObject);
begin
Caption := IntToStr(Random(1000));
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
NE := @Button1Click; // <<<<<<<<<<<<<<<<<< Здесь зарыта собака №1
if NE <> nil  // <<<<<<<<<<<<<<<<<< Здесь зарыта собака №2
then
  NE(Self);
end;

...

end.


"Найдите 2 отличия". Можно както сделать так что бы код работал и в делфи и в лазарусе без переписывания?

Спасибо!

П,С. Очень большая просьба не писать что это разные продукты и нельзя их смешивать ))
Аватара пользователя
avi9526
новенький
 
Сообщения: 16
Зарегистрирован: 25.08.2010 17:10:26

Re: Разный Pascal

Сообщение скалогрыз » 27.08.2010 15:23:54

после "unit Unit1;"
напиши такую строчку:
Код: Выделить всё
{$ifdef FPC}{$mode Delphi}{$endif}


RTFM
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48


Вернуться в Lazarus

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 44

Рейтинг@Mail.ru