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

Вопросы программирования и использования MSEide + MSEgui.

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

Ответить
Аватара пользователя
amateur
энтузиаст
Сообщения: 552
Зарегистрирован: 03.08.2007 10:15:32

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

Сообщение 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
 


Но результат один - "брякозяблики". Как избавиться от брякозябликов в МСЕ? Направьте на путь истинный ...
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

А разве MSE не в UTF-16 работает?
Аватара пользователя
debi12345
долгожитель
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение debi12345 »

Для начала:

var aText: AnsiString; ANSI => WIDE sttring
Аватара пользователя
amateur
энтузиаст
Сообщения: 552
Зарегистрирован: 03.08.2007 10:15:32

Сообщение 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...
Аватара пользователя
debi12345
долгожитель
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение debi12345 »

Проект с БД - в студию (ессно без бинариков - они большие).
Аватара пользователя
amateur
энтузиаст
Сообщения: 552
Зарегистрирован: 03.08.2007 10:15:32

Сообщение amateur »

кажись я разобрался с gmane.comp.ide.mseide.user :)

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

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

Проект с БД - в студию (ессно без бинариков - они большие).
а я думал вместе с бинарником :wink:
Аватара пользователя
amateur
энтузиаст
Сообщения: 552
Зарегистрирован: 03.08.2007 10:15:32

Сообщение amateur »

OnGetText или Set в мсе не сильно работает :?

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

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