Вниз
Скачать: CL | DM;

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

 
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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: -0.972 c
15-1153822612
rll-progr
2006-07-25 14:16
2006.08.20
ddeclientitem


15-1153820499
Gorlum
2006-07-25 13:41
2006.08.20
Про OUTLOOK


1-1152283411
slaga
2006-07-07 18:43
2006.08.20
Как прочитать "мультистроковый параметр" с регистра.


2-1154344223
lorn
2006-07-31 15:10
2006.08.20
xml -> в БД


4-1143958737
RL
2006-04-02 10:18
2006.08.20
Ограничение доступа к папке




   Наверх