Ошибка компиляции TObject в Combobox

Общие вопросы программирования, алгоритмы и т.п.

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

Ошибка компиляции TObject в Combobox

Сообщение dalfy » 08.01.2024 21:39:04

После установки Lazarus 3.0 перестал компилироваться код
Код: Выделить всё
ComboBox1.AddItem(SQLQuery1.FieldByName('NAME').AsString,
    TObject(SQLQuery1.FieldByName('ID').AsInteger));

Говорит, мол, TObect и integer не совместимы. Хотя в версии 3.0 RC2 всё компилировалось и запускалось.
В чём может быть дело? В опубликованных изменениях к версии 3.0 ничего не говорится.
dalfy
новенький
 
Сообщения: 11
Зарегистрирован: 07.10.2021 20:47:01

Re: Ошибка компиляции TObject в Combobox

Сообщение Снег Север » 08.01.2024 21:55:35

Предполагаю, что это - один из вариантов частой проблемы фрипаскаля на 64х битных ОС. Попробуйте привести ваш integer к int64.
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2997
Зарегистрирован: 27.11.2007 16:14:47

Re: Ошибка компиляции TObject в Combobox

Сообщение Alex2013 » 09.01.2024 02:32:36

Код: Выделить всё
Type
  tSR_Record=Record
    Name:String;
    BaseUrl:String;
    MirorList:String;
    PageList :String;
    NfScript:String;
    FCurent:Boolean;
  end;
  pSR_Record=^tSR_Record;

Var SR:pSR_Record;
...
New (SR);
...
  ListBox1.AddItem( SR^.Name,TObject(SR));
...

Так работает всюду. :idea: То есть нужно использовать ссылку на переменную
Alex2013
долгожитель
 
Сообщения: 2957
Зарегистрирован: 03.04.2013 11:59:44

Re: Ошибка компиляции TObject в Combobox

Сообщение Alexx2000 » 09.01.2024 10:33:23

Код: Выделить всё
TObject(PtrInt(SQLQuery1.FieldByName('ID').AsInteger))
Аватара пользователя
Alexx2000
постоялец
 
Сообщения: 487
Зарегистрирован: 25.10.2006 00:22:07
Откуда: Мытищи

Re: Ошибка компиляции TObject в Combobox

Сообщение dalfy » 09.01.2024 19:55:18

Alex2013 писал(а):New (SR);

Что-то не получилось с простым integer.

Это сработало:
Снег Север писал(а):привести ваш integer к int64

и
Alexx2000 писал(а):PtrInt(...)

одно и тоже, но PtrInt более универсален, т.к. зависит от компилятора (определяется дефайнами).

Благодарю за помощь!
dalfy
новенький
 
Сообщения: 11
Зарегистрирован: 07.10.2021 20:47:01


Вернуться в Общее

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

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

Рейтинг@Mail.ru