Пожелание

отредактировано 14:41 Раздел: FastCube
В след. версии хотелось бы увидеть свойство fcCube.Font не только для рабочей области fcCube, но и для "системной".
Или отдельный вариант или Font работающий на обе области.

Использую переводы и необходимо менять Charset, меняеться же он в данной версии только для рабочей области.. Вот вариант как я это испарвил

procedure TfcGrid.DrawEmptyRegion(ATypeDrRegion: TfcTypeDrRegion);
var

  //FIX : FOR CHARSET
  OldCharset: TFontCharset;

begin
..............
    FontOld := Canvas.Font.Handle;

    //FIX : FOR CHARSET
    OldCharset := Canvas.Font.Charset;

..............

    SelectObject(Canvas.Handle, FontNew);

    //FIX : FOR CHARSET
    Canvas.Font.Charset := OldCharset;
..............

Комментарии

  • отредактировано 14:41
    Спасибо.

    Попробуйте следующий вариант:

    procedure TfcCustomGrid.Paint;
    ...
    begin
    inherited;
    Canvas.Font.Assign(Font);
    ...
    end;

    С уважением, Олег.
  • отредактировано 14:41
    хмм, перелопатил все модули добавляя 3 параметр Charset во все процедуры рисующие текст,

    очень хотелось бы увидеть доп. фонт в след версии, FastCube
  • отредактировано 14:41
    ку ку..
    пожелание не было учтено, снова переделывал все модули...
  • отредактировано 14:41
    хмм, если в пред. версиях изменения в модулях позволяли распространить Charset на системные надписи.

    То в посл. версии отображения BALTIC_CHARSET, категорически не работает на компьютере с Russian регионом.

    Есть идеи, или готовые решения по этому вопросу? Очень необходима данная возможность примненения BALTIC_CHARSET для переводов из XML файла при их отображении в системных надписях, в новой версии ФастКуба.
  • отредактировано 14:41
    igrik написал: »
    хмм, если в пред. версиях изменения в модулях позволяли распространить Charset на системные надписи.

    То в посл. версии отображения BALTIC_CHARSET, категорически не работает на компьютере с Russian регионом.

    Есть идеи, или готовые решения по этому вопросу? Очень необходима данная возможность примненения BALTIC_CHARSET для переводов из XML файла при их отображении в системных надписях, в новой версии ФастКуба.

    Тяжело понять что хочется увидеть. Может есть какой-либо пример? Какой язык загружаете? Желательно пошаговую инструкцию и 2 скриншота:
    1) что надо
    2) как сейчас
  • отредактировано 14:41
    Объясняю более подробно.

    Ситуация:
    1. На компьютере стоит Russian регион для отображение Non-unicode.
    2. Имеется 2 XML файла с переводами Russian.xml и Latvian.xml (оба они в UTF-8 по умолчанию)
    3. Соответвено кодовые страницы 1251 и 1257 указаны в начале XML структуры.

    Примеры:
    Russian.xml
    <?xml version="1.0" encoding="utf-8"?>
    <Resources CodePage="1251">
      <StrRes Name="sRowsRegion" Text="русский"/>
    ....
    

    Latvian.xml
    <?xml version="1.0" encoding="utf-8"?>
    <Resources CodePage="1257">
      <StrRes Name="sRowsRegion" Text="lāāāātviesu"/>
    .....
    

    Действие 1:
    1. Загружаем ресурсы
      
    Res := FcRes.fcResources;
    Res.LoadFromFile(ExtractFilePath(Application.ExeName)+'\'+'Russian.xml');
    

    2. Устанавливаем объекту
    fcGrid.Font.Name:= 'Arial';
    fcGrid.Font.Charset:=RUSSIAN_CHARSET;
    

    3. Переводы загружаются отлично.


    Действие 2:
    1. Загружаем ресурсы
      
    Res := FcRes.fcResources;
    Res.LoadFromFile(ExtractFilePath(Application.ExeName)+'\'+'Latvian.xml');
    

    2. Устанавливаем объекту
    fcGrid.Font.Name:= 'Arial';
    fcGrid.Font.Charset:=BALTIC_CHARSET;
    

    3. Переводы загружаются, но отображаются вот так.

    lāāāātviesu, переведёный текст выглядит как lввввtviesu.

    В пред. версия дописывал доп. параметр в метод рисования текста и давал его ACanvas.
    В этой версии такой фокус не проходит.

    Вот собственно вся проблема.


  • отредактировано November 2008
    Ни одного комментария... 2 недели прошло..

    Я непонятно объяснил?
  • отредактировано 14:41
    Поправьте в fcGraphicUtils.pas строка 150:
    lfCharSet := DEFAULT_CHARSET;
    

    на
    lfCharSet := Charset;
    
  • отредактировано November 2008
    Спасибо.

    Проблема в fcGrid решилась. Но надписи на Toolbar, всё также криво отображаются. Где ещё поправить?
  • отредактировано 14:41
    Приветствую.

    Компонент TfcToolBar построен с использованием стандартных компонентов TToolBar, TToolButton, TPopupMenu.
    Никакого вмешательства в отрисовку не происходит.
    Насколько я знаю шрифт данными стандартными компонентами используется заданный в схеме Windows.
    Если у Вас есть рецепт простого изменения шрифта в TMenuItem, я с радостью им воспользуюсь.

    С уважением, Олег.

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.