Тестирование версии 0.9.27

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

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

Тестирование версии 0.9.27

Сообщение Павел Ишенин » 23.06.2009 06:21:58

По аналогии с этой темой я прошу провести тестирование версии 0.9.27. Времени до выхода, конечно, еще не неделя. По моим предположениям примерно месяц-полтора. Тем не менее, в баг-трекере я не вижу отчетов о возвращенных/новых ошибках. Есть лишь патчи и проблемы которые желательно решить до выпуска новой версии. Да и большинство проблем связано со средой, а не с компонентами.

Таким образом, LCL уже сильно меняться не будет и желательно начать на нем проверить свои проекты. Писать об ошибках можно в баг-трекер или в эту тему.
Павел Ишенин
постоялец
 
Сообщения: 475
Зарегистрирован: 24.03.2007 10:16:52

Re: Тестирование версии 0.9.27

Сообщение grigoreo » 23.06.2009 10:49:19

Добрый день Павел , по поводу процедуры FindChildControl , потомки типа TSpeedButton и схожие ищутся , а возможно чтобы она искала и невизуальные компоненты?пока для них она возращает значение nil (в моем случае TZQuery)

вообще непойму зачем все эти лишние ограничения по идее в чем проблема просто осуществлять поиск в масиве подчиненых контролов по имени
Аватара пользователя
grigoreo
постоялец
 
Сообщения: 195
Зарегистрирован: 10.03.2009 15:43:43
Откуда: С нашей Раши

Re: Тестирование версии 0.9.27

Сообщение Павел Ишенин » 23.06.2009 11:09:02

Не... child control. Control = наследник TControl.
Павел Ишенин
постоялец
 
Сообщения: 475
Зарегистрирован: 24.03.2007 10:16:52

Re: Тестирование версии 0.9.27

Сообщение v-t-l » 23.06.2009 11:53:11

Невизуальные компоненты не являются потомками TControl и не имеют родителя (Parent), только владельца (Owner), которым чаще всего является форма.
Для поиска нужно использовать метод FindComponent владельца.
v-t-l
энтузиаст
 
Сообщения: 735
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: Тестирование версии 0.9.27

Сообщение Logo » 24.06.2009 21:43:45

На какой FPC ориентироваться, 2.2.4, 2.3.1 или оба?
Logo
постоялец
 
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Re: Тестирование версии 0.9.27

Сообщение Павел Ишенин » 25.06.2009 06:58:42

Релиз будет идти в комплекте с 2.2.4, но 2.3.1 тоже поддерживается (и даже лучше).
Павел Ишенин
постоялец
 
Сообщения: 475
Зарегистрирован: 24.03.2007 10:16:52

Re: Тестирование версии 0.9.27

Сообщение Logo » 25.06.2009 22:58:38

Linux x86_64, QT-4.5
-----
Ошибка среды разработки.
Lazarus откомпилирован в QT.
Если в редакторе несколько вкладок и текущая не является крайней правой, то при открытии нового файла, вкладка стоящая справа, от вновь открытой, переименовывается на "unit1". Проявляется постоянно. В GTK подобного эффекта нет.

QT. Ошибка TMemo.
Не работает MaxLenght

QT. Ошибка TCombobox.
Не работает автозаполнение в кирилице.
Logo
постоялец
 
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Re: Тестирование версии 0.9.27

Сообщение Павел Ишенин » 26.06.2009 01:50:52

Это новые ошибки или старые ;) ?
Павел Ишенин
постоялец
 
Сообщения: 475
Зарегистрирован: 24.03.2007 10:16:52

Re: Тестирование версии 0.9.27

Сообщение VirtUX » 26.06.2009 09:03:13

Про вкладки - это точно старые.
Аватара пользователя
VirtUX
энтузиаст
 
Сообщения: 880
Зарегистрирован: 05.02.2008 10:52:19
Откуда: Крым, Алушта

Re: Тестирование версии 0.9.27

Сообщение Logo » 26.06.2009 13:03:43

Павел Ишенин писал(а):Это новые ошибки или старые ;) ?

Старые, давно уже тянутся.
Logo
постоялец
 
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Re: Тестирование версии 0.9.27

Сообщение Climber » 26.06.2009 13:25:42

У меня есть несколько глюков, но беда в том, что они проявляются только в моем проекте (довольно большом), а если вытащить отдельные компоненты в новый проект, то все работает правильно. Самая большая беда в том, что программа моя - клиент бд, так что сюда проект выкладывать бессмысленно...
Примеры глюков:
1) метод TComboBox.SetBounds некорректно задает положение комбобокса (свойство Top). Комбобокс по смыслу должен появляться над ячейкой сетки, над которой располагается курсор, и прятаться, когда курсор уходит с сетки. При первом появлении комбобокса после запуска программы передаю в SetBounds значение Top = 61, на выходе получаю 59 (и комбобокс рисуется на два пикселя выше ячейки).
2) Кострукция
Код: Выделить всё
procedure TMainForm.GridDblClick(Sender: TObject);
begin
  MyProcedure;
end;
выдает access violation, причем ошибка возникает после выхода из MyProcedure. Такая конструкция
Код: Выделить всё
procedure TMainForm.GridDblClick(Sender: TObject);
begin
  try 
    MyProcedure;
  except
  on E:Exception do
    ShowMessage(E.Message);
  end;
end;
в этом случае должна выдавать окно с сообщением об ошибке, а она ничего не выдает, как будто никаких ошибок и нет...
Climber
постоялец
 
Сообщения: 415
Зарегистрирован: 03.06.2007 20:09:57
Откуда: Москва

Re: Тестирование версии 0.9.27

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

2) Кострукция

возможно exception происходит при выходе из GridDblClick.

более того, скорее всего ошибка возникает по вине MyProcedure.

диагностировать удобно при помощи дизассемблера. Либо отключать части кода внутри MyProcedure, и следить за тем, отключение какого куска избавляет от возникновения исключения.
скалогрыз
долгожитель
 
Сообщения: 1803
Зарегистрирован: 03.09.2008 02:36:48

Re: Тестирование версии 0.9.27

Сообщение Logo » 26.06.2009 17:38:52

To: Climber
У меня нечто подобное на большом проекте было под GTK2(на маленьком не проявлялось), только c TAction. Помогло Application.ProcessMessages; прописанное в самом начале процедуры. Сейчас пробую воспроизвести данную ошибку, но либо ее ликвидировали в 0.9.27, либо не та ситуация.
Logo
постоялец
 
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Re: Тестирование версии 0.9.27

Сообщение uuu2 » 29.06.2009 06:34:37

Ну, установил я ваш Лазарус, делюсь впечатлениями.

1) 1,7-меговая пустая форма не есть хорошо. Это с параметром -Xg, без него 12 Мб. Не понятно, почему этот параметр не установлен по умолчанию и зачем вообще запихивать в exe-шник отладочную информацию?

2) Компоненты MySQL довольно странные. Зачем понадобилось делать отдельный компонент для каждой версии мускуля? 4.0, 4.1, 5.0? На моей машине, например, стоит 5.1, и что мне делать? Даунгрейдиться ради Лазаруса до 5.0? В Дельфях есть TSQLConnection, который работает с чем угодно, лишь бы указать ему dll-ку. TMySQL50Connection с dll-кой от MySQL 5.1 работать не хочет.

3) Может быть, ODBCConnection спасёт? Фигу - "Access Violation" (при установке Connected в True).

4) На форме ODBCConnection (1 штук) и кнопка (1 штук). Метод OnClick не установлен. Компилю проект, запускаю формочку. Вроде нормально. Дальше закрываю запущенную форму, вижу окошко "Выполнение остановлено". Теперь дабл-кликаю на кнопке (на редакторе формы), чтобы описать действия в Onclick, но появляется сообщение об ошибке "Редактор компонента для класса TDefaultComponentEditor вызвал ошибку: невозможно найти метод, исправьте ошибки в окне сообщений".

5) Еще пробегали "Access Violation" (раз 10), но я не понял, при каких условиях они возникают.

Вывод после 1 дня разбирательства: сыровато. До версии 1.0 ещё очень далеко.

------------------

Ну и небольшой поток мыслей "на тему". Зачем вообще нужен Лазарус?

Кроссплатформенность? Но ведь есть QT SDK, кстати LGPL-ный, чем он хуже? Тем, что там надо кодить на C++, а не на Паскале? Но можно написать транслятор с Паскаля на C++, сделать QT SDK двуязычным. По-моему, это гораздо легче. 99,9% всех паскалевских/дельфовых конструкций без проблем транслируемо на C++.

Кроме того, есть Delphi+QT, раз уж так хочется "натурального" паскаля. Правда, Дельфя проприентарная, а Лазарус свободный. Но так ли это важно для прикладного разработчика? Он ведь сам не будет модифицировать под себя код Лазаруса, зачем ему исходники? А готовую прикладную программу никто не мешает выпустить под GPL.
uuu2
незнакомец
 
Сообщения: 4
Зарегистрирован: 29.06.2009 05:23:23

Re: Тестирование версии 0.9.27

Сообщение grigoreo » 29.06.2009 08:41:43

uuu2 писал(а):Ну и небольшой поток мыслей "на тему". Зачем вообще нужен Лазарус?


Если бы все так думали то бы и Делфи не появился все бы кодили на ассемблере зачем чето создавать если есть язык который самый компактный а главное родной язык процессора

uuu2 писал(а): Но ведь есть QT SDK, кстати LGPL-ный, чем он хуже? Тем, что там надо кодить на C++, а не на Паскале? Но можно написать транслятор с Паскаля на C++, сделать QT SDK двуязычным. По-моему, это гораздо легче. 99,9% всех паскалевских/дельфовых конструкций без проблем транслируемо на C++.


ну да еще 5 лет создавать IDE чтобы потом такой же ухарь сказал что сыровато и до делфи не дотягивает, как грится не нравится не берись сиди на любимом Делфи ведь ты это написал чтобы просто показать что делфи это круто а Лазарь ничего не стоит

uuu2 писал(а):Кроме того, есть Delphi+QT, раз уж так хочется "натурального" паскаля. Правда, Дельфя проприентарная, а Лазарус свободный. Но так ли это важно для прикладного разработчика? Он ведь сам не будет модифицировать под себя код Лазаруса, зачем ему исходники? А готовую прикладную программу никто не мешает выпустить под GPL.


Ну к примеру с тобой понятно что ты не будешь, лень сделала свое дело, а за всех зачем говорить, ведь благодаря таким людям которые хотят что то делать, ты и тоже Делфи увидел,

Откуда вообще берутся такие базарофлудеры, спросили о текущих недочетох, нашелся пришел рыцарь на белом коне, профи, а есть подозрение что ты казачок и в делфях посредственность...(если так все не нравится дуй и пиши в своем делфи все готовое, и лицензию покупай на одно раб место самая простая одна штука убитых енотов, тока с твоим гонором тебе нужна делфи на 5-10 килобаксов)

Прошу всех прощения просто утомили вот такие деятели ))
Аватара пользователя
grigoreo
постоялец
 
Сообщения: 195
Зарегистрирован: 10.03.2009 15:43:43
Откуда: С нашей Раши

След.

Вернуться в Lazarus

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

Сейчас этот форум просматривают: Google [Bot] и гости: 30

Рейтинг@Mail.ru