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

Вниз

Поиск русского текста в RichEdit   Найти похожие ветки 

 
A1ex   (2004-03-22 14:27) [0]

Вопрос такого плана. В RichEdit осуществляется поиск кусков текста. Если это английский - проблем нет, все работает. Если искомый текст - кирилица, то упрямо не видит его при поиске. Должно ли так быть и если да, то как можно обойти. Не охота самому писать продцедуру поиска... Текст загружается из  файла как reText. KOL1.90
WinXP если это важно.


 
Gandalf ©   (2004-03-22 18:18) [1]

Код в студию.


 
<Falcon>   (2004-03-23 09:27) [2]

Проверь свойства AutoKeybdSet, AutoKeyboard


 
<Falcon>   (2004-03-25 11:36) [3]

Между прочим, о поиске, обнаружил вот такую забавную вещь.
Если присвоить строковой переменной значение строки RichEdit, то
вместо кирилицы получим мусор. т.е.
RichEdit1.Items[i]    ---    "some text   и тут текст"
 теперь делаем:
             Str:=RichEdit1.Items[i];
 имеем:
Str    --- "some text   "а тут уже мусор""  

Естесвенно имеется в виду что текст загружен как reText.

Теперь еще вопрос, почему при поиске кирилицы имеет значение текущая расскладка клавиатуры. При русской - текст находится, при английской - нет. Это как-то нехорошо.

Кто может просвятить?


 
Gandalf ©   (2004-03-25 22:52) [4]

Повоторюсь - код в студию! Ваш Код поиска.


 
<Falcon>   (2004-03-29 16:10) [5]

Вот код:

procedure TForm1.Button1Click(Sender: PObj);
var
Dest : string;
begin
 if OpenSaveDialog1.Execute then
   begin
     RichEdit1.RE_LoadFromFile(OpenSaveDialog1.Filename,reText,False);
     Dest:=RichEdit1.Items[1];
     ShowMessage(Dest);
   end;
end;

procedure TForm1.Button2Click(Sender: PObj);
var
RF : integer;
begin
//  ActivateKeyboardLayout(LoadKeyboardLayout("00000419",KLF_ACTIVATE), KLF_REORDER);
 RF:=RichEdit1.RE_SearchText(EditBox1.Text,True,True,True,0,-1);
 if RF >=0 then
   begin
     RichEdit1.SelStart:=RF;
     RichEdit1.SelLength:=Length(EditBox1.Text);
   end else ShowMessage("String not found!");
end;

procedure TForm1.KOLForm1FormCreate(Sender: PObj);
begin
 RichEdit1.Font.FontCharset:=RUSSIAN_CharSet;
end;

end.

Текстовый файл - для примера 1 сторока : "some text  и тут текст"
Вот собственно и все...


 
Gandalf ©   (2004-03-29 17:13) [6]

M$ по этому поводу молчит, попробуй дедовский способ через Pos.


 
<Falcon>   (2004-03-29 18:39) [7]

Уже сделал :-)  Хотелось просто с этим разобраться... Особенно почему

 Dest:=RichEdit1.Items[1];

мусор выдает.



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

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

Наверх




Память: 0.48 MB
Время: 0.035 c
1-1093588179
serg128
2004-08-27 10:29
2004.09.12
Как активизировать MDI окно?


1-1093216809
массив
2004-08-23 03:20
2004.09.12
Какой самый корркетный способ добавления шрифта в систему ?


14-1092983199
Kerk
2004-08-20 10:26
2004.09.12
Расшифруй киборга! Останови вторжение!


4-1091303283
dosik
2004-07-31 23:48
2004.09.12
COM - порт. Тестирование.


3-1092891993
ser_sun
2004-08-19 09:06
2004.09.12
программа для печать товарно-транспортных накладных,