Опять про кодировку русских букв.

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

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

kuksha
новенький
Сообщения: 28
Зарегистрирован: 10.01.2010 19:04:51

Опять про кодировку русских букв.

Сообщение kuksha »

Перенёс проект из Дельфи.
На форме вместо русских букв - одни знаки вопроса.
Попробовал в редакторе файла lfm изменить UTF8 на cp1251: правой кнопкой Параметры_файла->кодировка->cp1251->Изменить файл. Ничего не изменилось, вдобавок после перезапуска всё вернулось на место - опять в редакторе UTF8 и знаки вопроса...
Если на последнем шаге выбрать "Открыть с другой кодировкой", то тоже не помогает.
Аватара пользователя
Fluffy
незнакомец
Сообщения: 5
Зарегистрирован: 12.06.2010 23:07:35
Откуда: Новосибирск
Контактная информация:

Сообщение Fluffy »

если текст занаво вбить, то все нормально будет...
kirill
новенький
Сообщения: 22
Зарегистрирован: 25.10.2010 19:40:45
Откуда: Kaliningrad, RF
Контактная информация:

Сообщение kirill »

А если Caption генерится в коде и вместо русских букв знаки вопроса?
Аватара пользователя
Nik
энтузиаст
Сообщения: 573
Зарегистрирован: 03.02.2006 23:08:09
Откуда: Киров
Контактная информация:

Сообщение Nik »

kirill писал(а):А если Caption генерится в коде и вместо русских букв знаки вопроса?

Нужно вбить заново фрагменты, из которых генерится Caption.
kirill
новенький
Сообщения: 22
Зарегистрирован: 25.10.2010 19:40:45
Откуда: Kaliningrad, RF
Контактная информация:

Сообщение kirill »

не помогает. игра с настройками Font тоже не помогла.

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

    lbRootDirectory.Caption := 'Корневая директория: ' + gRootDir;
    lbRootDirectory.Caption := lbRootDirectory.Caption;
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

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

lbRootDirectory.Caption := 'Корневая директория: ' + SysToUTF8(gRootDir);
kirill
новенький
Сообщения: 22
Зарегистрирован: 25.10.2010 19:40:45
Откуда: Kaliningrad, RF
Контактная информация:

Сообщение kirill »

Mr.Smart писал(а):

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

lbRootDirectory.Caption := 'Корневая директория: ' + SysToUTF8(gRootDir);
В том то и дело. Что неправильно выводится Корневая директория - остальное в латинице красиво отображается.
devels
постоялец
Сообщения: 137
Зарегистрирован: 01.09.2010 12:14:38

Сообщение devels »

По всей видимости лазарус хранит исходники в юникодовой кодировке, а диалог использует ansi кодировку.

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

lbRootDirectory.Caption := Utf8ToAnsi('Корневая директория: ') + SysToUTF8(gRootDir);
Аватара пользователя
GAMER
энтузиаст
Сообщения: 627
Зарегистрирован: 06.08.2008 13:41:07
Откуда: Ужгород-Днепр, Украина
Контактная информация:

Сообщение GAMER »

Неоднократно наступал на эти грабли, по этому знаю как быстро исправить. :) Проблема в кодировке файла. Установите в Лазарусе кодировку даного файла в UTF8. Слетает она часто из-за того, что производилось редактирование внешним редактором, который снимает метку о кодировке.
kirill
новенький
Сообщения: 22
Зарегистрирован: 25.10.2010 19:40:45
Откуда: Kaliningrad, RF
Контактная информация:

Сообщение kirill »

GAMER писал(а):Неоднократно наступал на эти грабли, по этому знаю как быстро исправить. :) Проблема в кодировке файла. Установите в Лазарусе кодировку даного файла в UTF8. Слетает она часто из-за того, что производилось редактирование внешним редактором, который снимает метку о кодировке.

Прошу прощения, а как в lazarus выставить кодировку? Файл действительно в unicode. Это меня и смущает.
Аватара пользователя
EmeraldMan
постоялец
Сообщения: 149
Зарегистрирован: 16.10.2008 08:41:51
Откуда: Белгород
Контактная информация:

Сообщение EmeraldMan »

Правой кнопкой в редакторе исходного кода - параметры файла - кодировка.
kirill
новенький
Сообщения: 22
Зарегистрирован: 25.10.2010 19:40:45
Откуда: Kaliningrad, RF
Контактная информация:

Сообщение kirill »

EmeraldMan писал(а):Правой кнопкой в редакторе исходного кода - параметры файла - кодировка.

Поигрался со всеми русскими кодировками - не одна не помогла.
Lazarus 0.9.28.2 r22279 FPC 2.2.4 i386-win32-win32/win64
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

Приложите файл модуля, если это возможно.
Аватара пользователя
GAMER
энтузиаст
Сообщения: 627
Зарегистрирован: 06.08.2008 13:41:07
Откуда: Ужгород-Днепр, Украина
Контактная информация:

Сообщение GAMER »

Попробуйте так:

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

lbRootDirectory.Caption := 'Корневая директория: ' + SysToUTF8(gRootDir);
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

GAMER я это уже предлагал 7-ю постами выше.
Ответить