Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.27;
Скачать: CL | DM;

Вниз

RichEdit->FindText() Проблемы   Найти похожие ветки 

 
madm   (2003-11-13 18:08) [0]

Здравствуйте!
Собственно возникла такая трудность... Есть RichEdit в который я программно пишу текст(на русском и английском). В некоторый момент я пытаюсь найти в этом тексте строку:

int ToEnd = FMain->FEditor->RichEdit1->Text.Length();
int FoundAt = FMain->FEditor->RichEdit1->FindText(TreeView1->Selected->Text, 0, ToEnd - 1, TSearchTypes()<< stMatchCase);


Такой кусок текста в RichEdit точно есть, но не находиться :(
Такие проблемы только с русским когда текст английский то все ищется без проблем.

Может кто сталкивался?


 
}{enon ©   (2003-11-13 20:23) [1]

Странно...
Я поэксперементировал: результат поиска зависит не только от текста, но и от текущей раскладки клавиатуры (?!).
В принципе, можно попробавать так:
result := FloattoStr(Pos(Edit1.Text, RichEdit1.text));
При этом индексация начинается с 1, а перевод строки считается за два символа (#10, #13).


 
}{enon ©   (2003-11-13 20:41) [2]

P.S.:
1)FloatToStr здесь лишний (сорри)
2)Этот код ищет с учетом регистра. Если нужно, чтобы регистр не учитывался, используй AnsiUpperCase:
r esult := Pos(AnsiUpperCase(Edit1.Text),AnsiUpperCase(RichEdit1.Text));
Вроде бы всё, только (если требуется) замени Edit1.Text на требуемую строку (если я понял вопрос, то на "TreeView1.Selected.Text")


 
Ru ©   (2003-11-14 09:40) [3]

AnsiPos попробуй, но для этого текст надо скопировать из эдита


 
madm   (2003-11-17 15:39) [4]

Спасибо, но было интересно именно что это за глюк такой в RichEdit"e. И результат поиска зависит там от нескольких вещей, например если отредактировать этот текст(удалить хотя бы одну букву) руками, а не программно, то все начнет искаться нормально...
Вобще вопрос все еще в силе - почему так происходит???



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

Текущий архив: 2003.11.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
1-89977
Шурик Ш
2003-11-18 18:02
2003.11.27
Как засунуть форму в dll-файл?


3-89721
Мыш
2003-11-09 23:33
2003.11.27
Проблемы создания виртуальной таблицы. SQL


1-89833
Dred
2003-11-16 21:26
2003.11.27
Проблема с созданием канвы.


1-89984
adif
2003-11-17 14:10
2003.11.27
Как узнать занятость файла приложением?


8-90000
Spawn
2003-08-03 10:15
2003.11.27
AVI