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

Вниз

поиск в Richedit   Найти похожие ветки 

 
Flea   (2005-11-14 22:14) [0]

добрый вечер! есть функция
richedit1.RE_SearchText("w",false,false,true,0,length(richedit1.Text))
она возвращает номер символа только если это один английский символ, в данном случае w. если больше одного, или это русский символ - то результат -1. скажите пожалуйста, так должно быть или где-то ошибка?


 
Flea   (2005-11-15 23:18) [1]

ладно, скажу попроще: у кого-нибудь работает поиск в richedit? может быть есть пример его использования?


 
MTsv DN   (2005-11-16 08:46) [2]

Привет...

Надо изменить здесь:

function RE_SearchText( const Value: WideString; MatchCase, WholeWord, ScanForward: Boolean;
                           SearchFrom, SearchTo: Integer ): Integer;
   {* |<#richedit>
      Searches given string starting from SearchFrom position up to SearchTo
      position (to the end of text, if SearchTo is -1). Returns zero-based
      character position of the next match, or -1 if there are no more matches.
      To search in bacward direction, set ScanForward to False, and pass
      SearchFrom > SearchTo (or even SearchFrom = -1 and SearchTo = 0). }


и здесь:

function TControl.RE_SearchText(const Value: WideString; MatchCase,
 WholeWord, ScanForward: Boolean; SearchFrom, SearchTo: Integer): Integer;
var Flags: Integer;
   FT: TFindTextW;
begin
 Flags := Integer( ScanForward );
 if WholeWord then Flags := Flags or FT_WHOLEWORD;
 if MatchCase then Flags := Flags or FT_MATCHCASE;
 FT.chrg.cpMin := SearchFrom;
 FT.chrg.cpMax := SearchTo;
 FT.lpstrText := PWideChar( Value );
 Result := Perform( EM_FINDTEXT, Flags, Integer( @FT ) );
end;


С Уважением MTsv DN


 
Vladimir Kladov   (2005-11-16 10:48) [3]

я добавлю но как отдельный метод RE_WSearchText.
Там должно быть сообщение не EM_FINDTEXT а EM_FINDTEXTW = WM_USER+123. Windows9x не должен поддерживать вообще WideString.


 
Flea   (2005-11-16 21:38) [4]

большое спасибо. заработало



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

Форум: "KOL";
Текущий архив: 2006.09.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.04 c
2-1155639905
California
2006-08-15 15:05
2006.09.03
не найден файл


15-1155204435
Ketmar
2006-08-10 14:07
2006.09.03
XP и права на расшареные папки "per user"


15-1154623948
Petr V. Abramov
2006-08-03 20:52
2006.09.03
Система "Аллегро"


15-1155452450
БарЛог
2006-08-13 11:00
2006.09.03
Смеялся по потери пульса


2-1155559354
UMU
2006-08-14 16:42
2006.09.03
FindDialog





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский