Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];

Вниз

глюк ричедит ?   Найти похожие ветки 

 
oleggar ©   (2006-07-05 13:50) [0]

я ищу текст в rtf с помощью trichedit.findtext ,и почему-то текст ищется только
английский.Это как-то лечится ?или придется использовать другие компоненты или загружать текст в массив ?


 
begin...end ©   (2006-07-05 14:32) [1]

Да, аналогичная проблема была, и здесь уже обсуждалась. Причём, если текущая раскладка клавиатуры -- русская, то русский текст ищется без проблем. Лечил собственной реализацией FindText с использованием EM_FINDTEXTW (т.е. сообщения для поиска текста в unicode-формате, описание см. в MSDN) вместо обычного EM_FINDTEXT. Работает это только в NT-системах, насколько я помню.


 
oleggar ©   (2006-07-05 15:00) [2]

у меня НТ .если поделитесь реализацией  ,буду рад до смерти


 
begin...end ©   (2006-07-05 17:36) [3]

> oleggar ©   (05.07.06 15:00) [2]

Вот код немного переделанного метода FindText. Он оформлен как функция, в которую нужно передавать ссылку на конкретный экземпляр RichEdit, но при желании можно создать наследника от TCustomRichEdit и добавить туда эту функцию как метод.

uses RichEdit;

function FindTextW(RichEdit: TCustomRichEdit; const SearchStr: WideString;
 StartPos, Length: Integer; Options: TSearchTypes): Integer;
const
 EM_FINDTEXTW = WM_USER + 123;

var
 Find: TFindTextW;
 Flags: Integer;
begin
 with Find.chrg do
 begin
   cpMin := StartPos;
   cpMax := cpMin + Length;
 end;
 Flags := 0;
 if stWholeWord in Options then Flags := Flags or FT_WHOLEWORD;
 if stMatchCase in Options then Flags := Flags or FT_MATCHCASE;
 Find.lpstrText := PWideChar(SearchStr);
 Result := SendMessage(RichEdit.Handle, EM_FINDTEXTW, Flags, LongInt(@Find));
end


Изменения (по сравнению с обычным FindText) выделены. Как видите, их совсем немного.
:о)


 
oleggar ©   (2006-07-05 18:47) [4]

спасибо



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.037 c
15-1153471122
tButton
2006-07-21 12:38
2006.08.20
Мексика


3-1149861015
stud
2006-06-09 17:50
2006.08.20
продлемы с ADO


1-1152195070
PRT
2006-07-06 18:11
2006.08.20
Как записать содержимое окна OpenGL в bmp файл?


15-1153719134
Ega23
2006-07-24 09:32
2006.08.20
С Днём рождения! 24 июля


2-1154436189
Ivolg
2006-08-01 16:43
2006.08.20
Запуск с параметрами





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский