Общий проект Delphi и Lazarus

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

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

Аватара пользователя
Alexx2000
постоялец
Сообщения: 491
Зарегистрирован: 25.10.2006 00:22:07
Откуда: Мытищи
Контактная информация:

Сообщение Alexx2000 »

Так в Лазарусе вроде нет фреймов.
Аватара пользователя
Vlad04
новенький
Сообщения: 80
Зарегистрирован: 11.12.2007 20:11:19
Откуда: Караганда. Казахстан

Сообщение Vlad04 »

В папке LCL есть модуль forms.pp, в котором есть описание классов TCustomFrame и TFrame. Однако при открытии модуля с описанием фрейма говорит, что не найден модуль для компонента TCustomFrame.
Можно с этим что-нибудь сделать?
Чем можно заменить TFrame в Lazarus`e?
Аватара пользователя
Vlad04
новенький
Сообщения: 80
Зарегистрирован: 11.12.2007 20:11:19
Откуда: Караганда. Казахстан

Сообщение Vlad04 »

Фрэймы в Лазаре есть, но ИДЕ их пока (надеюсь пока) не поддерживает. Так что их надо добавлять в раздел public и при создании формы создавать ручками!
Аватара пользователя
Vlad04
новенький
Сообщения: 80
Зарегистрирован: 11.12.2007 20:11:19
Откуда: Караганда. Казахстан

Сообщение Vlad04 »

Столкнулся еще с одной непоняткой: при попытке компиляции ругается на функцию преобразования числа в строку

Код: Выделить всё

str(F:4:2,S) ;

выдает
Illegal expression

Хотя при просмотре исходных модулей Лазаруса и ФПК такая конструкция встречается.
Может ли кто-нибудь подсказать в чем причина?
Аватара пользователя
Vlad04
новенький
Сообщения: 80
Зарегистрирован: 11.12.2007 20:11:19
Откуда: Караганда. Казахстан

Сообщение Vlad04 »

Да, постепенно переходим на монолог! :( Ну ладно, еще одна проблема, скорее даже баг.
При наследовании форм содержащих TPageControl, попытка изменить дочернюю форму проваливается с треском - форма перестает грузиться как во время редактирования, так и при выполнении.
Что делать пока не знаю - в проекте около 30 форм наследуют TPageControl
Аватара пользователя
Attid
долгожитель
Сообщения: 2589
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

Vlad04
искать и править, даже если в трекер отправить в ближайшее время никто не решит проблему.
Аватара пользователя
Vlad04
новенький
Сообщения: 80
Зарегистрирован: 11.12.2007 20:11:19
Откуда: Караганда. Казахстан

Сообщение Vlad04 »

Attid писал(а):Vlad04
искать и править, даже если в трекер отправить в ближайшее время никто не решит проблему.

Вытекает воспросик: при отладке постоянно просит найти то один, то другой inc-файл. Как дебагеру указать их местоположения для автоматического подключения?
Attid
Есть ли у тебя возможность отправить этот баг в трекер.
All
Кто-нибудь просветит на счет процедуры str (см. выше)
Аватара пользователя
Alexx2000
постоялец
Сообщения: 491
Зарегистрирован: 25.10.2006 00:22:07
Откуда: Мытищи
Контактная информация:

Сообщение Alexx2000 »

Странно, у меня вот такой пример компилируется без проблем:

Код: Выделить всё

procedure TForm1.Button1Click(Sender: TObject);
var
  S : String;
  F : Double;
begin
  F := 2.05;
  str(F:4:2, S);
  Caption := S;
end;
Аватара пользователя
Attid
долгожитель
Сообщения: 2589
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

Есть ли у тебя возможность отправить этот баг в трекер.

возможность есть у всех желающих, сделай пример с одной/двумя формами , проверю и отправлю.
GrayEddy
постоялец
Сообщения: 375
Зарегистрирован: 06.05.2005 09:37:56

Сообщение GrayEddy »

Вопрос так и вертится на языке :wink:
Зачем переводить работоспособный проект с Delphi на Lazarus?
Вроде не было упоминания о миграции на Linux.
"Работает? Не трожь!" - из известного анекдота. :)
Аватара пользователя
debi12345
долгожитель
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение debi12345 »

Зачем переводить работоспособный проект с Delphi

Затем, чтобы фиксить баги не синтетически без приоритетности, а по ситуациям и приоритетам из реальной жизни - иного пути получить работоспособный лазарь не существует.
В данном случае баги от платформы не зависят, значит - одновременно фиксится и линукс-версия.

Vlad - не сдавайтесь и не бросайте свою затею !
Аватара пользователя
Vlad04
новенький
Сообщения: 80
Зарегистрирован: 11.12.2007 20:11:19
Откуда: Караганда. Казахстан

Сообщение Vlad04 »

GrayEddy писал(а):Вопрос так и вертится на языке :wink:
Зачем переводить работоспособный проект с Delphi на Lazarus?
Вроде не было упоминания о миграции на Linux.
"Работает? Не трожь!" - из известного анекдота. :)

Delphi 7 Enterprise Edition 73 499 рублей !!!
Времена пиратского софта уходят, и не хочется вскакивать на последнюю ступеньку уходящего поезда.

Сегодня понял почему у меня ругается на процедуру str(A:4:2,S). Понял и обалдел: Проект начинался еще в ДОСе на паскале и оттуда пришли структуры данных (менять нельзя - срок хранения весь срок работы предприятия, а потом в архив) и наследница досовского паскаля переменная А имеет тип real48, а real48 = array[0..5] of byte

На счет наследования: вопрос оказывается еще глубже, сегодня наткнулся на отказ открывать наследника TFrame. Проблема в загрузке наследованных компонентов.
Аватара пользователя
Vlad04
новенький
Сообщения: 80
Зарегистрирован: 11.12.2007 20:11:19
Откуда: Караганда. Казахстан

Сообщение Vlad04 »

Attid писал(а):
Есть ли у тебя возможность отправить этот баг в трекер.

возможность есть у всех желающих, сделай пример с одной/двумя формами , проверю и отправлю.


Пример есть, как его тебе передать?
vital
новенький
Сообщения: 86
Зарегистрирован: 17.10.2007 14:52:59

Сообщение vital »

Vlad04 писал(а):
GrayEddy писал(а):Вопрос так и вертится на языке :wink:
Зачем переводить работоспособный проект с Delphi на Lazarus?
Вроде не было упоминания о миграции на Linux.
"Работает? Не трожь!" - из известного анекдота. :)

Delphi 7 Enterprise Edition 73 499 рублей !!!
Времена пиратского софта уходят, и не хочется вскакивать на последнюю ступеньку уходящего поезда.


Откройте для себя Turbo Delphi Professional за 11700 рублей и бесплатный Turbo Explorer. Если разработка ведётся только под Win, то на этом поприще лазарь дельфе, имхо, не конкурент. Всё-таки класс играет свою роль... Кстати, турба так же качественно превосходит семёрку(зачем на ней вообще циклиться? Даже D2007 в 3 раза дешевле).Кроме хелпа, вестимо. Хотя... часть касающаяся Platform SDK существенно лучше, чем в "классических" делфях.
Аватара пользователя
Vlad04
новенький
Сообщения: 80
Зарегистрирован: 11.12.2007 20:11:19
Откуда: Караганда. Казахстан

Сообщение Vlad04 »

vital писал(а):Откройте для себя Turbo Delphi Professional за 11700 рублей и бесплатный Turbo Explorer.

Для работы этот вариант надо рассмотреть, а для себя... Для того, чтобы вкладывать такие деньги необходимо либо видеть реальную возможность их окупить, либо уже заработать. Для начинающих Lazarus отличный выбор, а большое количество пользователей и, соответственно тестеров и кодеров, плюс для Lazarus.
Также использование бесплатных средств разработки (имхо) стимулирует разработу бесплатных программ :)
Ответить