Страница 1 из 1

dbf + mseide кодировка дос

СообщениеДобавлено: 03.12.2012 03:10:15
amateur
Пал в ступор:

Этим кодом пытаюсь из дбфки в CP866 вытянуть из стринг поля данные (кажись в ютф8 :))
Код: Выделить всё
uses
udm_mfm, mseucs2toru;
procedure tudmmo.OnNazGetText(Sender: TField; var aText: AnsiString; DisplayText: Boolean);
begin
  atext := cp866toUCS2(Sender.AsString);
end;


куда "цепляю" OnNazGetText...

Код: Выделить всё
  object tmsedbf1: tmsedbf
...
    controller.fields.fields = (
...   
        item
          DisplayWidth = 160
          FieldName = 'NAZVA'
          Index = 4
          OnGetText = OnNazGetText


Но результат один - "брякозяблики". Как избавиться от брякозябликов в МСЕ? Направьте на путь истинный ...

Re: dbf + mseide кодировка дос

СообщениеДобавлено: 03.12.2012 05:38:14
Vadim
А разве MSE не в UTF-16 работает?

Re: dbf + mseide кодировка дос

СообщениеДобавлено: 03.12.2012 09:01:14
debi12345
Для начала:

var aText: AnsiString; ANSI => WIDE sttring

Re: dbf + mseide кодировка дос

СообщениеДобавлено: 03.12.2012 10:46:43
amateur
1. Увидел кирилицу ..
2. Такое ощущение что не так :?

Методом "народного" тыка проверил когда сработает такое

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


оказалось что в tdbstringedit1 св-во ongettext .?

Потом
Код: Выделить всё
  aText := cp866toUCS2(tdbstringedit1.value);
и кирилица привет.
НО: почему, если в
Код: Выделить всё
procedure tudmmo.OnNazGetText(Sender: TField; var aText: AnsiString; DisplayText: Boolean);
begin
  atext := ' ';
end;


не отображаются пустые поля, т.е. сетка должна отрисовать пусто (если через св-во controller)? ЧуВствую 5 местом, чет не так я сделал...

Изображение

получилась кака :cry:
По шагам:
Щелчок на сетке.
Скролом прокрутил.
И появляются пустые ячейки.
Если на них щелкнуть мышкой, текст отображается....

Попутно: иногда, при щелчке мыши исчезает текст в ячейке (повторный щелчок его отображает)

МСЕ свежайшее - 2.9...

Re: dbf + mseide кодировка дос

СообщениеДобавлено: 03.12.2012 13:09:32
debi12345
Проект с БД - в студию (ессно без бинариков - они большие).

Re: dbf + mseide кодировка дос

СообщениеДобавлено: 03.12.2012 13:15:27
amateur
кажись я разобрался с gmane.comp.ide.mseide.user :)

От заставит же "лихая" залезеш куда угодно :)

Буду Мартину надоедать :roll:

Проект с БД - в студию (ессно без бинариков - они большие).
а я думал вместе с бинарником :wink:

Re: dbf + mseide кодировка дос

СообщениеДобавлено: 04.12.2012 18:19:03
amateur
OnGetText или Set в мсе не сильно работает :?

5 точка была права: не туда вставил :)

Решил через проблему через twidgetgrid1. Вполне устраивает, токо писать больше...