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

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

Вернуться   Форум программистов > Delphi программирование > Lazarus, Free Pascal, CodeTyphon
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.02.2010, 20:20   #1
Marsel737
Форумчанин
 
Аватар для Marsel737
 
Регистрация: 09.11.2009
Сообщений: 669
Восклицание Несколько проблем с Lazarus'ом

Всем доброго времени суток.

Начал писать один проект в lazarus'е и тут же появились проблемы, которых не было в Delphi.

К примеру, этот код должен отображать надпись посередине экрана, но тем не менее она почему то прилично сдвинута вправо.

Код:
  with lblLoad do
  begin
    Caption := '--------------------';
    Font.Size := 20;
    Left := (Screen.Width - Width) div 2;
    Top := (Screen.Height - Height) div 2;
    Transparent := true;
    Font.Color := clWhite;
  end;

Или вот тут создаю четыре изображения и пытаюсь присвоить им процедуру нажатия, но не компилируется, ошибка:
uSelFon.pas(96,28) Error: Wrong number of parameters specified for call to "ImageClick"


Код:
procedure TfrmSelFon.ImageCreate;
var
   i: integer;
begin
  for i := 1 to 4 do
  begin
    ImgFon := TImage.Create(Owner);
    with imgFon do
    begin
      Parent := self;
      Height := 150;
      Width := 200;
      Stretch := True;
      Transparent := False;
      Name := 'ImgFon' + IntToStr(i);
      Tag := i;
      Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+ 'Data\FonRes\Fon' + IntToStr(i) + '.png');
      OnClick := ImageClick;
      case i of
      1: begin
           Top := 24;
           Left := 27;
         end;
      2: begin
           Top := 24;
           Left := 256;
         end;
      3: begin
           Top := 200;
           Left := 27;
         end;
      4: begin
           Top := 200;
           Left := 257;
         end;
      end;
    end;
  end;
end;
Код:
procedure TfrmSelFon.ImageClick(Sender: TObject);
begin
  frmMain.imgFon.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)
    + 'Data\FonRes\Fon' + IntToStr(((Sender as TImage).Tag)) + '.png');
end;
и ещё вопрос, как мне теперь все эти изображения уничтожить, чтобы при следующем создании формы не было ошибки, попытался сделать так:

Код:
procedure TfrmSelFon.FormClose(Sender: TObject; var CloseAction: TCloseAction);
var
  i: integer;
begin
  {for i:= 1 to 4 do
  begin
    (FindComponent('imgFon' + IntToStr(i)) as TImage).Free;
    //(FindComponent('imgFon' + IntToStr(i)) as TImage) := nil;
  end;   }
  
  ImgFon.Free;
  ImgFon := nil;
end;

Но не помогло. Вот так делать вообще оказывается нельзя:

Код:
(FindComponent('imgFon' + IntToStr(i)) as TImage) := nil;
П.с.: думаю не стоит создавать из-за этого отдельную тему, поэтому спрошу здесь, есть ли какие-нибудь компоненты для lazarus'а наподобии MediaPlayer в Delphi? Вообщем компоненты, с которыми можно звуки в прогу добавить.
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли
Marsel737 вне форума Ответить с цитированием
Старый 03.02.2010, 08:29   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 18,136
По умолчанию

В Лазарусе, кажись, есть опция соместимости с Делфи, попробуйте ее. Все-таки нужно помнить, что Лазарус это не Делфи, а самостоятельная среда разработки.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как исправить несколько проблем Windows XP SP3? Syltan Windows 22 05.01.2010 16:47
Диагностика проблем связей stas77 Microsoft Office Excel 1 19.11.2009 08:59
пошаговый мастер решения проблем. Gipno PHP 4 18.06.2009 16:42
почему в MS Visual 2008 С++ возникают ошибки, хотя в С++ 6 таких проблем небыло atlon Visual C++ 22 03.03.2009 11:10
Несколько проблем anatolin Microsoft Office Excel 5 01.12.2008 00:39