Перевод проекта Delphi на Lazarus

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

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

Re: Перевод проекта Delphi на Lazarus

Сообщение dunin » 21.04.2011 08:35:37

lemon писал(а):Привет , еще вопрос возник

При установке alexsDataSet_1_28\FBDataSet
идет сообщение

C:\lazarus_\lazarus_lib\FBDataSet\fbcustomdataset.pas(1,1) Fatal: Can't find unit jvuiblib used by fbcustomdataset

Как лечить ?

FBDataSet обновить надо бы... где alexs его прячет не помню - сам каждый раз, как приспичит, минут 15 на поиск трачу.

alexs, может поставишь как-нибудь себе в подпись где ПОСЛЕДНИЕ версии Rx и FBDataSet лежат?
Аватара пользователя
dunin
энтузиаст
 
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и

Re: Перевод проекта Delphi на Lazarus

Сообщение whs » 07.03.2013 16:27:09

Vadim писал(а):
lemon писал(а):Какие это 5 строк и на чем ?

На том, что у Вас уже есть. :) Если Вы используете компонент TDbf, то перекодировка будет выглядеть примерно так:
Код: Выделить всё
Dbf1.First;
Dbf1.Edit;
For i:=0 To Dbf1.RecordCount-1 Do
  Dbf1.FieldByName('Текстовое_поле').AsString:=ConsoleToUtf8(Dbf1.FieldByName('Текстовое_поле').AsString);


Предварительно нужно выяснить коэффициент отношения максимальной длины строки, которая хранится в текстовом поле к длине самого поля. Если он больше, чем 1/2, то длину поля следует увеличить до соблюдения этого коэффициента, т.к. русский символ в кодировке UTF8 занимает 2 байта, а не один.


Сглупил, не мог понять почему этот код
Код: Выделить всё
Dbf1.FieldByName('Текстовое_поле').AsString:=ConsoleToUtf8(Dbf1.FieldByName('Текстовое_поле').AsString);
в поле текст СКЛ01, а получал текст СК. Заменил на
Код: Выделить всё
Dbf1.FieldByName('Текстовое_поле').Text:=ConsoleToUtf8(Dbf1.FieldByName('Текстовое_поле').AsString);
все ок
Аватара пользователя
whs
новенький
 
Сообщения: 28
Зарегистрирован: 03.04.2010 18:07:44

Пред.

Вернуться в Lazarus

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

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

Рейтинг@Mail.ru