Форум: "Основная";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];
ВнизТекст в RxRichEdit Найти похожие ветки
← →
sharik_212 (2004-08-10 21:38) [0]Господа, подскажите, как получить правильный русский текст из определенной строки в RxRichEdit. Проблемма в том, что в тексте "просто текст text", а если написать Form1.Caption:=RxRichEdit1.Lines[7], то заголовок формы станет ?????? ????? text, т.е. вместо кириллицы знаки вопросов. RxRichEdit1.Lines.Strings[7] дают тот-же результат. Помогите, пожалуйста.
Заранее огромное спасибо.
← →
Dec (2004-08-10 22:04) [1]Попробуй поставить PlainText в false
← →
sharik_212 (2004-08-10 22:19) [2]увы...
← →
begin...end © (2004-08-10 22:22) [3]Может, со шрифтами что-то? Charset?
← →
Кириешки © (2004-08-10 22:26) [4]А что это за компонент такой RxRichEdit?
Вот с обычным RichEdit все работает нормально. :)
А может помочь обычное присвоение значения переменной например :
var
s : pchar;
begin
s := pchar( RxRichEdit1.Lines.Strings[7]);
Form1.caption := s;
end;
поробуй, может получится.
← →
wnew © (2004-08-11 00:23) [5]С TRichEdit в этом отношении великая проблема. Под Windows 9x и ME установка свойства CharSet в RUSSIAN_CHARSET действует безупречно, но под виндами с Win2K и выше изменение CharSet ни к чему не приводит. Есть выход - использовать специальные шрифты, к примеру: PROMT Helv Cyr Spec, но это, к сожалению, в некоторой степени будет ограничивать пользователя и кроме того, не знаю, как в этом случае с лицензией на шрифт.
Недавно прочитал, что можно использовать один трюк: выводить текст в поток, а от туда копировать функциями буфера обмена.
Я пытался разобраться в исходниках TRichEdit: прикольно то, что TMemo и TRichEdit оба наследуются от TCustomMemo, но TMemo корректно реагирует на установку свойства SetChar в RUSSIAN_CHARSET. Есть ещё модуль RichEdit - вот тут для меня всё запутанно, не могу уловить где собака зарыта, но кажется, что всё, всё-таки, уходит в Windows.
Есть ещё система обучающая дельфийские контролы понимать Unicode - посмотрите здесь: http://tnt.ccci.org/delphi_unicode_controls/ я тоже ещё не испытывал этого, но собираюсь. Пока нет времени, завтра улетаю в отпуск:-)
← →
wnew © (2004-08-11 00:25) [6]
> wnew © (11.08.04 00:23) [5]
Эта проблема актуальна для виндов с не русскими региональными настройками.
← →
wnew © (2004-08-11 01:22) [7]
> wnew © (11.08.04 00:23) [5]
> Недавно прочитал, что можно использовать один трюк: выводить
> текст в поток, а от туда копировать функциями буфера обмена.
Нет не так. Сейчас нашёл снова беседу об этой проблеме. Там показывается трюк: текст, который в RichEdit, отображён кракозябрами, копируется из RichEdit в Stream, потом из него загружается в Memo, далее из Memo снова в Stream и на конец из Stream снова в RichEdit и прикол - RichEdit отображает кириллицу, как положено. Вот приведёный там код:
procedure TForm1.Button1Click(Sender: TObject);
begin
RichEdit1.Clear;
RichEdit1.Font.Charset := RUSSIAN_CHARSET;
RichEdit1.Lines.Add("Çäðàâñòâóëòå!"); // Здравствуйте!
end;
procedure TForm1.Button2Click(Sender: TObject);
var
Stream: TStringStream;
begin
Stream := TStringStream.Create(EmptyStr);
try
RichEdit1.Lines.SaveToStream(Stream);
Memo1.Text := Stream.DataString;
finally
Stream.Free;
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
var
Stream: TStringStream;
begin
Stream := TStringStream.Create(Memo1.Text);
try
RichEdit1.Lines.LoadFromStream(Stream);
finally
Stream.Free;
end;
end;
http://www.delphipraxis.net/topic30840_verschiedene+zeichensaetze+in+einer+anwendung.html&sid=39b9a2d200b8efcd1dd6660f2d 4adcf8
← →
TUser © (2004-08-11 02:37) [8]Не знаю, как там с Rx, но TJvRichEdit в W2K работает нормально.
← →
wnew © (2004-08-11 03:30) [9]Всё! Установил я себе TntUnicodeControl. Класс! Безупречно. Теперь всё равно на каком языке создавать приложение. Проверил TTntRichEdit - здорово, разумеется нужно использовать Unicode. Если, к примеру файл сохранён в Ansi, то нужно функцией StringToWideChar(const Source: string; Dest: PWideChar; DestSize: Integer): PWideChar; преобразовать в Unicode.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.038 c